[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Help: config Management]
[Thread Prev] | [Thread Next]
- Subject: [Help: config Management]
- From: Christian Nitschke <privat@xxxxxxxxxxxxxx>
- Date: Wed, 20 Mar 2019 22:06:14 +0100
- To: uugrn@xxxxxxxxxxxxxxx
On 3/20/19 5:41 PM, uugrn-request@xxxxxxxxxxxxxxxxx wrote: > Um E-Mails an die Liste uugrn zu schicken, nutzen Sie bitte die > Adresse > > uugrn@xxxxxxxxxxxxxxxxx > > Um sich via Internet von der Liste auszutragen oder in die Liste > einzutragen: > > http://mailman.uugrn.org/mailman/listinfo/uugrn > > Oder schicken Sie eine E-Mail mit dem Wort "help" in der Betreffzeile > oder im Text an > > uugrn-request@xxxxxxxxxxxxxxxxx > > Sie koennen den Verwalter dieser Liste unter der Adresse > > uugrn-owner@xxxxxxxxxxxxxxxxx > > erreichen. > > Wenn Sie antworten editieren bitte Sie die Betreffzeile auf einen > sinnvollen Inhalt der spezifischer ist als "Re: Contents of uugrn > digest..." > > > Meldungen des Tages: > > 1. Re: [Help: config Management] (Stefan Hagen) > 2. Re: [Help: config Management] (Marc Haber) > 3. Re: [Help: config Management] (Marc Haber) > 4. Re: [Help: config Management] (Andreas Koeltringer) > 5. Re: [Help: config Management] (Stefan Hagen) > 6. Re: [Help: config Management] (Stefan Hagen) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Wed, 20 Mar 2019 15:45:35 +0100 > From: Stefan Hagen <sh+uugrn@xxxxxxxxxxx> > To: uugrn@xxxxxxxxxxxxxxxxx > Subject: Re: [Help: config Management] > Message-ID: <20190320144535.GB41908@shell> > Content-Type: text/plain; charset=utf-8; format=flowed > > Hi Christian, > > Christian Nitschke wrote: >> Ich wollte mal fragen, wie Ihr eure Config Dateien handhabt. >> was waeren denn so eure Gedanken dazu? > Ich mache das seit einigen Jahren mit git. Und zwar ohne Symlinks. > Das ist eigentlich mega einfach, wenn man es mal gemacht hat. > > Lege dir ein Bare Repository an: > $ git init --bare $HOME/.cfg > > Damit hast du ein Repository fuer dein Home. Im Verzeichnis $HOME/.cfg > liegen nur die Git-Verwaltungsdaten. > > Als naechstes legst du dir ein Alias an: > $ alias config="git --git-dir=$HOME/.cfg/ --work-tree=$HOME" > > Nun solltest du "einmal" folgendes ausfuehren: > $ config config --local status.showUntrackedFiles no > (sonst wuerde "config status" immer alle Dateien deines Homes als > untracked auflisten) > > Ab jetzt hast du das Kommando "config" welches du ganz genauso wie git > benutzen kannst. > > $ config status / commit / pull / push ... merge, rebase, reset... :) > > Wenn du irgendwo in deinem Home jetzt eine Datei oder ein Verzeichnis > hast, welches du in deine Dotfiles aufnehmen willst, dann fuege es > einfach hinzu: > > $ config add .vim > $ config commit -m "Meine Vim Konfiguration" > $ config push > > Du kannst natuerlich auch ne Upstream URL setzen und das Repository auf > Github oder Anderso hin puschen. > > Wenn du es auf einer anderen Maschine Clonen willst, dann geht das so: > > $ git clone --bare https://...../dotfiles.git $HOME/.cfg > > ----- > > Ich habe mir in meiner .kshrc (sollte auch in bash funktionieren) > folgende Funktionen und Aliase angelegt: > > # config command > alias config='git --git-dir=$HOME/.cfg/ --work-tree=$HOME' > > # I'm lazy, so just commit with some machine info > function dotfiles_autoupdate { > config add -u && \ > config commit -m "Update $(date +"%Y-%m-%d %H:%M") $(uname -s)/$(uname -m)" && \ > config push > } > > # please give me my dotfiles... > function dotfiles_init { > git --no-replace-objects clone --bare \ > git@xxxxxxxxxxx:dotfiles.git $HOME/.cfg > config config --local status.showUntrackedFiles no > config checkout -f > } > > ----- > > Alles gibt's natuerlich in meinen Dotfiles: > https://codevoid.de/?q=/1/git/dotfiles/files.gph > > Erfahrungswerte (eigentlich generell zu git): > > # Aufassen mit config add <verzeichnis> > > Sagen wir du hast .vim deinem Git-Repository hinzugefuegt. Spaeter fuegst > du ein neues Plugin ein - z.B. .vim/bundle/vim-fugitive dann wird das > von git nicht automatisch aufgepickt. Das muss mit "config add" > hinzugefuegt werden. Als Tippfauler Mensch ist man verleitet dann einfach > nochmal "config add .vim" zu tippen. Das fuehrt dann unter Umstaenden > dazu, dass viel zu viel hinzugefuegt wird. (undo files, swapfiles, > passwoerter...). Oder im Falle von .mutt z.B. der komplette header cache > ;) > > # Keine Passwoerter committen > > Klingt logisch, ist manchmal aber gar nicht so einfach. Viele Programme > erlauben es Passwoerter aus Konfigurationsdateien raus zuhalten indem sie > Programme wie "pass" (password-store) oder gpg rufen koennen um sich ein > passwort abzuholen. Wenn das nicht moeglich ist, dann commite ich eine > Datei namens .configfile.sample mit "****" statt Passwort. Das ist aber > nur mein persoenlicher Workaround. > > # Mit pull mit --rebase, stash kennen lernen > > Man aendert ja doch immer mal wieder was auf nem nicht-aktuellen branch. > Daher empfehle ich eigentlich generell: > $ config pull --rebase # statt config pull > > Wenn noch nicht committete Aenderungen "rumhaengen": > $ config stash > $ config pull --rebase > $ config stash apply > > *Ich* bin mit meiner Loesung _sehr_ zufrieden. > > Viele Gruesse, > Stefan > > PS: Schnell getippt - bitte mit Autokorrektur lesen :) > awsome! werde das gleich ausprobieren!!! Tausend dank fuer die Muehe die du dir gemacht hast! Ich muss meinen Mailman mal anderst einstelllen, ich hab die erste mail heute bekommen und schon gedacht niemand antwortet darauf. > Message: 3 Date: Wed, 20 Mar 2019 16:05:48 +0100 From: Marc Haber > <mh+uugrn@xxxxxxxxxxxx> To: uugrn@xxxxxxxxxxxxxxxxx Subject: Re: > [Help: config Management] Message-ID: > <20190320150548.GF3206@xxxxxxxxxxxxxxxxxxx> Content-Type: text/plain; > charset=utf-8 On Mon, Mar 18, 2019 at 02:18:40AM +0100, Christian > Nitschke wrote: >> Ich wollte mal fragen, wie Ihr eure Config Dateien handhabt. > Meine Du die zum System (also in /etc) oder die zum Account (also in ~)? > > Gruesse > Marc > > -- > ----------------------------------------------------------------------------- > Marc Haber | "I don't trust Computers. They | Mailadresse im Header > Leimen, Germany | lose things." Winona Ryder | Fon: *49 6224 1600402 > Nordisch by Nature | How to make an American Quilt | Fax: *49 6224 > 1600421 das kommt ganz drauf an, auf dem desktop und laptop ~/ auf dem server wiederrum kann es ja auch nicht schaden eine Versionskontrolle zu haben, daher auch /etc. Dafuer gaebe es dann 2 verschiedene git repos > Message: 6 Date: Wed, 20 Mar 2019 17:41:11 +0100 From: Stefan Hagen > <sh+uugrn@xxxxxxxxxxx> To: uugrn@xxxxxxxxxxxxxxxxx Subject: Re: [Help: > config Management] Message-ID: <20190320164110.GD41908@shell> > Content-Type: text/plain; charset="utf-8"; Format="flowed" Andreas > Koeltringer wrote: >> was ist mit config Dateien die in /etc liegen. > Das ist eine ganz andere Baustelle. In /etc schreibt das System selbst > bei jedem Update rum. Das will man nicht unbedingt detailiert tracken. > Zudem ist /etc deutlich weniger homogen als Konfigurationsdateien im > $HOME. > > Dafuer ist /etc klein und laesst sich damit komplett sichern. > > Wenn du /etc im git haben willst: Etckeeper installieren und fertig. > https://help.ubuntu.com/lts/serverguide/etckeeper.html > > Etckeeper kuemmert sich um alles und updated das etc-git immer wenn sich > was geaendert hat. Es haengt sich in apt rein und sichert immer wenn du > was installierst. > > Frueher hatte ich etckeeper auf fast allen Rechnern. Inzwischen > wurde das durch ein einfaches Backup Script abgeloest. Allerdings nur auf > Servern. > > Was ich mir von /etc an relevanten configs halten will kopiere ich mir > nach $HOME/.etc und das steckt dann auch im dotfiles.git. Auf > Desktop-Rechnern sichere ich /etc ansonsten gar nicht. > > Viele Gruesse, > Stefan waere es dann nicht besser die dateien in etc nach $HOME/.etc zu symlinken pub RSA 3072/DB8EA2A1 2019-03-19 Christian Nitschke <privat@xxxxxxxxxxxxxx> sub RSA 3072/84F864F4 2019-03-19 -- UUGRN e.V. http://www.uugrn.org/ http://mailman.uugrn.org/mailman/listinfo/uugrn Wiki: https://wiki.uugrn.org/UUGRN:Mailingliste Archiv: http://lists.uugrn.org/