Un bon historique de commits est essentiel pour garantir la clarté et la facilité de maintenance d’un projet. Rédiger des messages de commit structurés permet non seulement de comprendre les évolutions du code, mais aussi de faciliter le travail collaboratif. Voici un guide pour écrire des messages de commit efficaces.
Pourquoi structurer ses commits ?
- Clarté : Un message bien rédigé explique clairement ce qui a été modifié.
- Historique lisible : Un historique clair facilite la compréhension des changements passés.
- Facilite la revue de code : Les reviewers peuvent rapidement comprendre l’objectif d’un commit.
- Automatisation : Des outils comme semantic-release utilisent des conventions de commit pour automatiser le versionnage.
Structure d’un bon message de commit
Un message de commit doit suivre ce format :
<type>(scope): <description> <corps optionnel>
- type : Le type de modification apportée.
- scope (facultatif) : La partie du projet concernée (par ex., auth, analytics).
- description : Une phrase concise expliquant le changement.
- corps (facultatif) : Une description plus détaillée si nécessaire.
Les types principaux de commits
Voici les types les plus courants, basés sur les conventions Conventional Commits
:
- feat : Ajout d’une nouvelle fonctionnalité.
- fix : Correction d’un bug.
- docs : Modifications de la documentation.
- style : Changement de formatage ou de style (pas de modification fonctionnelle).
- refactor : Restructuration du code sans changement de comportement.
- test : Ajout ou modification de tests.
- chore : Tâches diverses (ex., mise à jour des dépendances).
Exemple :
feat(auth): ajouter la connexion avec Google
fix: corriger le bug d’affichage du menu
docs: mettre à jour le README
feat(analytics): intégrer le tracking utilisateur
fix(auth)!: corriger la validation des tokens JWT
Bonnes pratiques
- Soyez concis mais précis : Évitez les messages trop vagues comme « mise à jour ».
- Un commit = un objectif : Chaque commit doit correspondre à une seule modification logique.
- Utilisez le temps présent : Écrivez vos messages comme si vous décriviez ce que vous faites maintenant (« corrige un bug » et non « corrigé un bug »).
- Incluez un corps si nécessaire : Si le changement n’est pas trivial, ajoutez une description plus détaillée.
Adapter le style de commit à votre équipe
Il est important de noter que les commits peuvent ne pas toujours suivre cette structure. Chaque équipe peut avoir ses propres conventions et styles en fonction de ses besoins et de ses préférences. Assurez-vous de vous aligner avec les pratiques de votre équipe pour maintenir la cohérence.
Automatiser et vérifier les messages de commit
- Outils de validation : Utilisez des outils comme commitlint pour imposer des conventions.
- Hooks Git : Configurez des hooks avec
husky
pour vérifier les messages avant qu’ils ne soient validés. - Changelog automatisé : Avec des messages bien structurés, des outils comme
standard-version
ousemantic-release
peuvent générer des changelogs automatiquement.
Conclusion
Structurer ses commits n’est pas seulement une bonne pratique, c’est une habitude qui facilite le travail en équipe, améliore la qualité du code et optimise le cycle de développement. En suivant ces règles simples, vous contribuez à un projet plus propre, plus clair et plus professionnel.