WikiMiNET

La documentation technique et administrative

Outils pour utilisateurs

Outils du site


wiki:divers:git

Ceci est une ancienne révision du document !


Qu'est ce que GIT

Git est un logiciel de gestion de versions décentralisé. C'est un logiciel libre créé par Linus Torvalds,

Il permet à plusieurs personnes de travailler sur le même code, en simultané, et d'éviter les conflits entre leurs versions. Il permet de plus de garder une trace de chaque “version” sauvegardée du code. Bref un outil très puissant et très utile dès lors que l'on travaille à plusieurs sur un projet. Sans surprise, on l'utilise beaucoup à MiNET

Git à MiNET

Nous avons deux serveurs Git à minet :

git.minet.net qui comprend nottament :

  1. ADH5 (et autres projets affiliés)
  2. Les configuration switchs

gitlab.minet.net, espace réservé aux projets MiNET moins critique. Vous trouverez dessus :

  1. Pleins de fichiers de configurations (Puppet, postfix)
  2. Les projets codes de MiNET (trombint, etc…)

Comment se servir de GIT

Comment créer un dépot GIT dans un dossier?

  git init

Comment paramétrer mon dépot GIT pour faire remonter mes modifications à un dépot distant?

  git remote add origin <project_url>

Comment lier de nouveaux fichiers au dépot (seuls ces fichiers seront pris en compte… Récursif pour les repertoires)?

  git add <file>

Comment prendre un “instantané” du dépot ?

  git commit -am "Un commentaire stupide"

Notion de branche : le dépot git peut être dans plusieurs états en même temps…

Comment créer une nouvelle branche ?

  git branch <nom de la branche>

Comment changer de branche?

  git checkout <branch>

Comment envoyer l'état de la branche courante sur un dépot distant ?

  git push origin <branch>  

Comment récupérer l'état d'une branche distante ?

  git pull origin <branch>

Comment rassembler la branche1 sur laquelle vous avez fait des modification, avec la branche courrante ?

  git merge <branch1>

Branch, checkout et merge vous servirons que si vous utilisez les branches, sinons toutes les autres commandes vous seront plus qu'utiles ;-)

Gitolite

Gitolite est le logiciel de serveur git utilisé historiquement à MiNET (en attendant une meilleur stabilité de Gitlab).

La configuration se fait au travers du dépôt gitolite-admin. Il faut avoir les droits( demander au bureau ou au vieux s'ils vous manque les droits).

  git clone git@git.minet.net:gitolite-admin.git
  

Les clefs ssh se trouvent dans le dossier keydir. Les dépôts et les droits associés se trouvent dans conf/gitolite.conf. Dans ce dernier fichier les groupes sont identifiés par le préfixe @.

Par exemple pour ajouter l'utilisateur toto au dépôt adh5: on rajoute toto dans la ligne @minet et dans keydir on met la clef PUBLIQUE ssh de toto dans toto.pub. On commit et on push et voili voilou :D

wiki/divers/git.1440755667.txt.gz · Dernière modification: 2015/08/28 11:54 par 127.0.0.1