Un flux de travail simple avec git.

Il existe de nombreuses manières d'utiliser git, certains étant plus adaptées que d'autres dans certaines situations. Nous verrons ici une méthode générique bien connue qui fonctionne dans la plupart des cas. Il est à noter que cet article s'adresse principalement à un public débutant avec git ou n'ayant jamais pris le temps de vraiment s'y intéresser.

Une branche par fonctionnalité

Afin de garder notre branche master propre et permettre le développement parallèle de plusieurs fonctionnalités, nous prendrons l'habitude de toujours créer une branche pour chaque fonctionnalité ajoutée ou correction de bug. Cette bonne pratique est particulièrement recommandée lorsque plusieurs personnes travaillent sur le dépôt, mais pas uniquement. En effet, il arrive parfois qu'un bug critique soit signalé alors que vous avez du travail en cours… et là vous êtes bien content d'avoir fait une branche séparée qui attendra dans son coin que vous ayez corrigé le bug en question.

Pour créer une nouvelle branche, on utilisera checkout avec l'option -b. Il est possible de lister les branches avec branch (la branche courante est indiquée par un astérisque *) et de naviguer entre elles avec checkout.

$ git checkout -b ma_nouvelle_branche
$ git branch
* ma_nouvelle_branche
  master
$ git checkout master
$ git branch
  ma_nouvelle_branche
* master

Dans une branche, n'hésitez pas à faire des commits réguliers.

Fusionner une branche dans master

Une fois que l'on a terminé de travailler sur une branche, il ne reste plus qu'a la fusionner avec la master. Afin de garder un historique de commits propres, nous allons écraser tous les commits de la branche en un seul. Il ne reste alors plus qu'a détruire la branche devenue inutile.

$ git checkout master
$ git merge --squash ma_nouvelle_branche
$ git status
$ git commit
$ git branch -D ma_nouvelle_branche

Entre le merge et le commit, pensez à vérifier que tout est en ordre.

Pour faire un bon commit, notez un court résumé sur la première ligne (50 caractères maximum) puis, sur les lignes suivantes (72 caractères maximum par ligne), expliquez en détail ce que fait le commit ainsi que pourquoi vous l'avez fait. Mettez à la fin des liens et autres références intéressantes.

Pour aller plus loin