Modifications entre les versions 4 et 6 (s'étendant sur 2 versions)
Version 4 à la date du 2007-11-07 17:35:36
Taille: 1933
Éditeur: ThomasNoël
Commentaire: exclude vim
Version 6 à la date du 2007-11-07 17:50:34
Taille: 2350
Éditeur: ThomasNoël
Commentaire: au fait...
Texte supprimé. Texte ajouté.
Ligne 2: Ligne 2:

'''Note : j'ai testé tout ça sur Gutsy... merci aux Etchers de confirmer que ça passe aussi sur Debian Etch, qui n'est qu'en git 1.4...''' Sinon il faudra abandonner (oohh...) ou bien utiliser le git de backports.org (uuhh...)
Ligne 67: Ligne 69:
== Améliorations == == Améliorations à prévoir ==
Ligne 69: Ligne 71:
 . interfaçage avec apt : http://bryan-murdock.blogspot.com/2007/07/put-etc-under-revision-control-with-git.html  . faire un ou des wrappers pour une utilisation plus simple via sudo : un truc genre "sudo confcommit" qui lance des git add puis git commit -a --author $SUDO_USER)
 . interfa
çage avec apt : voir http://bryan-murdock.blogspot.com/2007/07/put-etc-under-revision-control-with-git.html

Git est un système de gestion de versions. Voir sa [http://fr.wikipedia.org/wiki/Git_(logiciel) page wikipédia]

Note : j'ai testé tout ça sur Gutsy... merci aux Etchers de confirmer que ça passe aussi sur Debian Etch, qui n'est qu'en git 1.4... Sinon il faudra abandonner (oohh...) ou bien utiliser le git de backports.org (uuhh...)

Suivre la config d'une machine avec git

On veut pouvoir documenter les modifications faites dans /etc et dans /usr/local.

Installation

  1. On installe git :

    • # aptitude install git-core
  2. On créée un dépôt général pour toute la machine :
    • # cd /
      # git init
  3. Pour éviter d'avoir des "saletés" directement à la racine (/), on déplace le dépôt autre part :

    • # mkdir /var/lib/git
      # mv /.git /var/lib/git/root
      # ln -s /var/lib/git/root /.git
      # chmod u=rwx /var/lib/git/root
  4. On veut suivre /etc et /usr/local seulement, pour cela on modifie les exclusions au niveau du dépôt, dans le fichier /var/lib/git/root/info/exclude :

    • #
      # Le fichier /var/lib/git/root/info/exclude 
      #
      /
      !/usr/local
      !/etc
      *.dpkg-old
      *.dpkg-new
      *~
      .*.swp
  5. On fait les premiers ajouts et le premier commit :

    • # cd /etc ; git add .
      # cd /usr/local ; git add .
      # git commit -m "mise en route du suivi : /etc et /usr/local"

Utilisation

Après chaque modification d'un fichier, enregistrer les modifications :

  • # git commit -a

Si on veut suivre un nouveau fichier :

  • # git add fichier

ou un nouveau répertoire (modifier exclude si c'est en dehors de /etc ou /usr/local):

  • # cd /repertoire ; git add .

Pour voir les modifications :

  • # git log -10
    # git show ...(le code du commit)...

Améliorations à prévoir

  • faire un ou des wrappers pour une utilisation plus simple via sudo : un truc genre "sudo confcommit" qui lance des git add puis git commit -a --author $SUDO_USER)
  • interfaçage avec apt : voir http://bryan-murdock.blogspot.com/2007/07/put-etc-under-revision-control-with-git.html

  • cron nocture qui balance un courriel d'insulte quand on a pas fait le commit alors qu'il y a des modifs
  • faire un serveur central gitweb (avec les commandes git-ssh-* ou autre pour envoyer vers le dépot)

Git/SuiviDeConfiguration (dernière édition le 2013-09-02 03:50:32 par JeanChristopheAndré)