Gestire /etc sotto git con etckeeper: Difference between revisions

From RVM Wiki
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
Etckeeper è un'interfaccia a Git, che versiona la etc/ , automaticamente ad ogni modifica di apt, con crontab, ed aggiungendo importanti info nel log relativo alle operazioni effettuate.
Etckeeper è un'interfaccia a Git, che versiona la etc/ , automaticamente ad ogni modifica di apt, con crontab, ed aggiungendo importanti info nel log relativo alle operazioni effettuate.


* Creare il repo remoto
* Mettere la etc sotto git ed agganciarla ad un repository remoto (convertire eventuali repository svn, allineare la working copy in git)
* Importare la etc attuale (vedi importa in cartella con files già esistenti)
sudo git init
sudo git add .
sudo git commit -m 'Initial import of etc'
sudo git remote add origin http://diesis@localhost/git/etc
sudo git push origin master


* Installare
* Installare
  sudo apt-get install etckeeper
  sudo apt-get install etckeeper


* Inizializzare
sudo etckeeper init


* Committare
* Se '''NON''' si è già messa etc sotto git, inizializzare, altrimenti procedere al punto successivo:
  sudo etckeeper commit
  #sudo etckeeper init
 
* Se '''NON''' si è già messa etc sotto git, committare, altrimenti procedere al punto successivo:
#sudo etckeeper commit


* Abilitare l'autpush
* Abilitare l'autpush
cd /etc/etckeeper/commit.d
<pre>
(echo '#!/bin/sh' ; echo 'echo "* Pushing to remote repository"'; echo 'git push') | sudo tee 99git-push > /dev/null
cat | sudo tee /etc/etckeeper/commit.d/99git-push > /dev/null <<EOFile
  sudo chmod +x 99git-push
#!/bin/bash
tty --quiet
BATCH=$?
if [ $BATCH=0 ]
then
    echo "* Pushing to remote repository"
fi
git push > /dev/null
EOFile
</pre>
 
  sudo chmod +x /etc/etckeeper/commit.d/99git-push
cd /etc
  sudo git add .
  sudo git add .
  sudo git commit -m "Added scritp to automatically push commits to backup repository"
  sudo git commit -m "Added script to automatically push commits to backup repository."
 
* Fare il primo push in manuale
sudo git push


==Riferimenti==
==Riferimenti==
*[http://kitenet.net/%7Ejoey/code/etckeeper/ etckeeper]
*[http://kitenet.net/%7Ejoey/code/etckeeper/ etckeeper]

Latest revision as of 09:45, 13 September 2011

Etckeeper è un'interfaccia a Git, che versiona la etc/ , automaticamente ad ogni modifica di apt, con crontab, ed aggiungendo importanti info nel log relativo alle operazioni effettuate.

  • Mettere la etc sotto git ed agganciarla ad un repository remoto (convertire eventuali repository svn, allineare la working copy in git)
  • Installare
sudo apt-get install etckeeper


  • Se NON si è già messa etc sotto git, inizializzare, altrimenti procedere al punto successivo:
#sudo etckeeper init
  • Se NON si è già messa etc sotto git, committare, altrimenti procedere al punto successivo:
#sudo etckeeper commit
  • Abilitare l'autpush
cat | sudo tee /etc/etckeeper/commit.d/99git-push > /dev/null <<EOFile
#!/bin/bash
tty --quiet
BATCH=$?
if [ $BATCH=0 ]
then
    echo "* Pushing to remote repository"
fi
git push > /dev/null
EOFile
sudo chmod +x /etc/etckeeper/commit.d/99git-push
cd /etc
sudo git add .
sudo git commit -m "Added script to automatically push commits to backup repository."
  • Fare il primo push in manuale
sudo git push

Riferimenti