===== etckeeper =====
Doku: https://my.stargazer.at/de/2019/02/13/etckeeper-vs-git-push-and-branches/
**Repo initialisieren**
sudo etckeeper init
**Initialer Commit**
sudo etckeeper commit "Initial etc commit"
Sync der etckeeper Repos mit einem remote Repo: siehe https://wiki.archlinux.org/index.php/etckeeper
* auf github ein private repo anlegen
* access token anlegen
* credential helper konfigurieren, damit der token lokal gespeichert wird:
git config --global credential.helper store
* remote Repo definieren:
git remote add origin git@github.com:thommierother/etcwww.git
* Authentifizierung über ssh Key für root, siehe Github Settings, SSH Keys
Branch erstellen und mit remote verknüpfen:
git branch -M main
git push -u origin main
Ausschliessen von sicherheitskritischen Dateien:
git rm -r --cached shadow*
Trotzdem sind die Daten noch in der History, eine saubere Methode gibt es hier:
https://rtyley.github.io/bfg-repo-cleaner/
Vergleichen von Dateien:
git diff origin/server1 origin/server2 -- file
Hook, damits automatisch remote geht, /etc/etckeeper/commit.d/60-push:
#!/bin/sh
git push --set-upstream origin $HOSTNAME