[SPIP] PUBLIE : Écrire un message de commit

SPIP

Article validé

L’article « Écrire un message de commit
(Écrire un message de commit - SPIP) » vient d’être publié par
Maïeul.


Écrire un message de commit

mercredi 26 juillet 2023 , par Maïeul

Les messages des commits dans SPIP suivent la nomenclature des Commits
Conventionnels (Commits Conventionnels). Ceci
facilite la relecture a posteriori de l’historique du code, ainsi que
l’analyse des PR.

Le corps du message doit être clair et explicatif : décrire le problème
traité et les évolutions ou corrections apportées.

Sommaire

  • Structure d’un commit conventionnel
  • Exemple de commit conventionnel
  • Liste des types de commit
  • Type
  • Signification
  • Pour aller plus loin

Structure d’un commit conventionnel[|Retour au

sommaire](#s-Structure-d-un-commit-conventionnel)

  1. Première ligne commençant par le type de commit, suivi de deux
    points (:), suivi d’un message résumant le commit.
  2. Le type peut éventuellement être complété par un scope entre
    parenthèses afin de préciser le composant ou la fonctionnalité
    modifiée, ou le ticket concerné.
  3. Optionnellement, on peut ajouter, après une ligne vide, un ou
    plusieurs paragraphes complémentaires décrivant plus en détail le
    commit. La syntaxe Markdown peut être utilisée.
  4. Enfin, une dernière ligne (séparée des précédentes par une ligne
    vide) doit contenir une référence au ticket auquel est lié le commit. La
    référence prend la forme suivant Refs: #XXX, ou Fix: #XXX pour fermer
    le ticket automatiquement lors de l’arrivé dans la branche main ou
    master.

Exemple de commit conventionnel[|Retour au

sommaire](#s-Exemple-de-commit-conventionnel)

Exemple de log de commit complet :

fix: réparer le lien vers la licence GPL dans le pied des pages du

privé

en le remplaçant par un simple lien vers le site officiel gnu.org

Fix: #5328

Liste des types de commit[|Retour au

sommaire](#s-Liste-des-types-de-commit)

Type|Retour au sommaire

Signification|Retour au sommaire

build
Modifie un script de compilation du programme ou modifie des dépendances
externes. Indique également une montée en version.

changel Modifie l’implémentation d’une fonctionnalité — peut
modifier des signatures de fonctions (≠ refactor)

chore
Travail de fond n’altérant pas le code (sortir une version, regénérer
du code compilé)

ci : Relatif à l’intégration continue

deprecate : Déprécier (sans l’enlever) une fonctionnalité

docs
Relatif à la documentation (docs, readme, changelog)

feat
Ajoute une fonctionnalité

fix : Corrige un problème

i18n
Relatif aux traductions et chaînes de langue

perf
Améliore la performance d’algorithme ou du programme

refactor
Réécriture de code, sans en modifier l’implémentation

remove
Suppression de code ou de fonctionnalité (déprécié auparavant)

revert
Annule une modification précédente (commit)

security
Relatif à la sécurité

style
Relatif aux règles d’écriture du code (Coding Standard)

test : Relatifs aux tests du logiciel


Pour aller plus loin|Retour au sommaire

Se référer au site www.conventionnalecommits
(Commits Conventionnels).

— Envoyé par SPIP (https://www.spip.net/)