scratch/content/html/fr/blog/2009-11-12-Git-for-n00b/c-est-parti-pour-l-aventure.md
2010-12-21 16:45:59 +01:00

3.8 KiB

isHidden menupriority kind created_at title author_name author_uri subtitle
false 3 article 2009-11-12T11:39:54+02:00 Git pour les nuls Yann Esposito yannesposito.com Utiliser git avec quelques commandes simples

Et c'est parti !

Voici une parmi de nombreuses autres façon d'utiliser Git. Cette méthode est nécessaire et suffisante pour travailler seul ou en collaboration sur un projet commun. Cependant, on peut faire beaucoup mieux avec Git que ce workflow (en langage anglo-saxon).

Utilisation basique

La façon immédiate de travailler avec Git :

  • récupérer les modifications des autres git pull
  • voir les détails de ces modifications git log
  • Plusieurs fois:
    • Faire une modification atomique
    • verifier le details de ses modifications git status et git diff
    • indiquer si nécessaire que de nouveaux fichiers doivent être versionnés git add [file]
    • enregistrer ses modifications
      git commit -a -m "message"
    • envoyer ses modifications aux autres git push (refaire un git pull si le push renvoie une erreur).

Voilà, avec ces quelques commandes vous pouvez utiliser Git sur un projet avec d'autres personnes. Même si c'est suffisant, il faut quand même connaître une chose avant de se lancer ; la gestion des conflits.

Gestion des conflits

Les conflits peuvent survenir lorsque vous modifiez les même lignes de codes sur le même fichier d'une autre branche que vous mergez. Ça peut sembler un peu intimidant, mais avec Git ce genre de chose est très facile a régler.

exemple

Vous partez du fichier suivant :

Zoot

et vous modifiez une ligne

Zoot the pure

sauf que pendant ce temps, un autre utilisateur a aussi modifié cette ligne et a fait un push de sa modification.

Zoot, just Zoot

Maintenant quand vous lancez la commande

$ git pull remote: Counting objects: 5, done. remote: Total 3 (delta 0), reused 0 (delta 0) Unpacking objects: 100% (3/3), done. From /home/e640846/tmp/conflictTest d3ea395..2dc7ffb master -> origin/master Auto-merging foo CONFLICT (content): Merge conflict in foo Automatic merge failed; fix conflicts and then commit the result.

Notre fichier foo contient alors :

<<<<<<< HEAD:foo
Zoot the pure
=======
Zoot, just Zoot
>>>>>>> 2dc7ffb0f186a407a1814d1a62684342cd54e7d6:foo

Résolution du conflit

Régler le conflit, il suffit d'éditer le fichier, par exemple en écrivant :

Zoot the not so pure

et de 'commiter' tout simplement :

git commit -a -m "conflict resolved"

Maintenant vous êtes fin prêt pour utiliser Git. Sauf que Git, c'est un outil qui permet de faire beaucoup plus que juste ça. Nous allons maintenant voir comment utiliser les fonctionnalités de Git qui n'étaient pas disponibles avec CVS et consorts.