Skip to content

Force branch naming conventions

Clement Brizard requested to merge 10-force-branch-naming-conventions into master

Closes #10 (closed)

  • Objectif : uniformiser la syntaxe des branches.
  • Solution proposée : exploiter une (super) fonctionnalité de Gitlab. Quand on crée une branche à partir d'une issue, Gitlab génère un nom de la forme : issueNumber-issue-title-separated-with-dashes. Exemple ici avec l'issue "Add local music" :

merge_request

Si on garde ce nom par défaut, la merge request correspondante aura automatiquement dans sa description le lien fait avec son issue (ex : voir première ligne de la présente merge-request).

  • Bénéfices :
    • on garantit la "traçabilité" entre issues et merge requests
    • en particulier, on peut facilement identifier plusieurs merge-requests qui participent à résoudre une même issue
    • on garantit une syntaxe uniforme pour toutes les branches (et c'est quand-même plus joli)
    • la branche "dit" plus explicitement ce qu'elle apporte
  • Conséquences :
    • que chaque merge request ait une issue correspondante, et, si on est malin, créer sa branche depuis l'issue (voir capture d'écran), faire un git fetch dans son terminal, puis checkout sur notre belle branche toute neuve.
    • éviter les noms d'issue trop longs

  • PS 1 : pour que ça marche, le nouveau dossier .githooks a été défini comme nouveau directory pour les hooks avec la variable d'environnement core.hooksPath. C'est une astuce pour que ces hooks soient pris en compte par le versionnage et donc partageables. Il faut tester si ça marche direct chez vous, sinon il faut lancer une fois la commande : git config core.hooksPath .githooks.
  • P(L)S 2 : ceci peut être fait aisément avec la fonctionnalité "Push rules" de Gitlab mais cette dernière n'est pas disponible dans la version Community de Gitlab dont dispose l'UTC. Voilà.
Edited by Clement Brizard

Merge request reports