Retrouvez tous vos commits avec le Conventional Commits

portrait de l'auteur

Écrit par Vincent Delmotte

Le 20 août 2024

Découvrez comment le Conventional Commits peut vous aider à retrouver facilement vos commits dans vos projets. Apprenez à structurer vos messages de commit pour faciliter la maintenance de vos projets.

En tant que développeur, on a tous un jour rédigé un commit de la sorte :

git commit -m "WIP"
git commit -m "test"

La plupart du temps, pas de soucis, ces commits tombent dans les tréfonds de l’historique GIT et personne ne les reverra jamais. Jusqu’au jour ou la prod est en feu et qu’il faut retrouver le code qui provoque cette pagaille. Aie, c’est pas pratique de retrouver du code quand tous les commits sont mal nommé.

Un homme devant un pc en feu

Aujourd’hui, je vais vous donner une solution au problème de nommage des commits que j’utilise quotidiennement et qui me facilite la vie !

Conventional commits c’est quoi ?

Conventional commits comme son nom l’indique est une convention qui permet de structurer la rédaction des commits GIT.

Comment ça marche ?

Voici à quoi ressemble un commit suivant cette convention

<type>(scope): <description>

Les types

Le type permet de spécifier globalement les modifications qui ont été apportées. Voici la liste des types possibles :

  • feat : ajout d’une fonctionnalité
  • fix : fixe d’un bug
  • docs : changement de la documentation
  • style : changement qui n’affecte pas le sens du code comme l’ajout d’une tabulation ou d’un point-virgule
  • refactor : un changement qui n’ajoute pas de fonctionnalité et qui ne fixe pas de bug
  • perf : amélioration des performances
  • test : ajout d’un test ou correction d’un test existant
  • build : changement qui affecte le système de build ou les dépendances
  • ci : changement qui affecte la fichier de configuration ou les scripts de CI
  • chore : autres changements que src et les tests
  • revert : enlève un commit

Le scope

Le scope est une partie optionnel du message de commit. Il permet de spécifier l’endroit du code qui a été modifié. Cela peut être le nom de la fonctionnalité ou le nom du dossier dans lequel les fichiers sont modifiés.

En général, c’est grâce au scope que l’on peut facilement retrouver une modification de code qui nous intéresse.

On peut ajouter un point d’exclamation juste après le scope pour indiquer que les changements apportés par le commit introduisent un breaking change.

La description

La description a pour but de donner des informations complémentaires du scope. En lisant la description, le développeur doit saisir le sens global du changement apporté par le commit.

Exemples

feat: allow provided config object to extend other configs
feat(api)!: send an email to the customer when a product is shipped

Voici la documentation officielle de conventional commits

https://www.conventionalcommits.org/en/v1.0.0/

← Voir tous les articles