Diskussions- und Newsboard der Linux Interessen Gruppe Suletuxe
allgemeine Kategorie => Installation & Einrichtung => Thema von: Sebastian am 05. September 2022, 16:22:14

Titel: Managing Dotfiles mit git
Beitrag von: Sebastian am 05. September 2022, 16:22:14

Hallo Suletuxe,

Nachdem ich nun viel Zeit in die Konfiguration meines EndevourOS Installation gesteckt habe, wollte ich nun meine vielen Konfigurationsdateien (Dotfiels) in meinem Heimatverzeichnis unter die Versionskontrolle von git stellen, um eventuelle Änderungen nachträglich rückgängig zu machen und um diese einfacher zu sichern.

Der erste Impuls war es einfach ein git Repository im Heimatverzeichnis zu erstellen, das aber einige Nachteile mit sich bringt. Dadurch wird das ganze Heimatverzeichnis zum git Repository und man müsste alle anderen Dateien per .gitignore ausschließen. Zudem falls man vergessen hat in einem Projektordner ein weiteres git Repository anzulegen, arbeitet man versehentlich mit seinem Heim Repo.

Dann bin ich aber auf den Wiki-Eintrag Dotfiles (https://wiki.archlinux.org/title/Dotfiles) gestoßen, indem genau für diesen Anwendungsfall ein git init --bare Repository anzulegen, und dies mit einem Alias zu managen empfohlen wird. Dadurch entfallen die Nachteile, die man bei einer direkten Initialisierung des git Repos im Heimverzeichnis hat, die Konfigs lassen sich aus dem ganzen HOME Verzeichnis über den Alias managen und man brauch keine zusätzliche Software, git alleine reicht dann aus.

Hier eine kurze Zusammenfassung der einzelnen Schritte, um ein --bare Repo anzulegen:


Code:

git init --bare ~/.dotfiles
alias config='/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'
config config status.showUntrackedFiles no


Hierbei wird das bare Repo im Verzeichnis ~./dotfiles angelegt. Und durch den Alias config wird es dann angesprochen. Der letzte Befehl sorgt dafür, dass alle nicht getrackten Dateien von git ignoriert werden, das erspart das Anlegen einer .gitignore

Damit die Bash completion (Tab Vervollständigung) auch mit dem Alias weiterhin funktioniert. Kann man das Script bash-complete-alias (https://www.suletuxe.de/forum/index.php?board=13;action=display;threadid=686) verwenden.

Konfigurationen, die für mehrere Hosts dienen, verwalte ich dabei im Main branch, host spezifische bekommen von mir einen eigenen branch.

Titel: Re:Managing Dotfiles mit git
Beitrag von: Andreas am 06. September 2022, 06:13:02

Einsame Klasse. Mehr fällt mir dazu nicht ein ;D :D

Danke!
Andreas


Diskussions- und Newsboard der Linux Interessen Gruppe Suletuxe | Powered by YaBB SE
© 2001-2003, YaBB SE Dev Team. All Rights Reserved.