Lignes directrices pour Commit
From Joomla! Documentation
Le guide pratique pour les 'Commit' pour le CMS Joomla.
Ces lignes directrices ne sont pas des règles rigides, mais se veulent plutôt un guide de ce que nous considérons comme les meilleures pratiques.
Merge-Commit Vs. Squashing (Fusion-validation contre Écrasement)
Fusion-validation (Merge-Commit)
Lorsque vous cliquez sur le bouton "Merge" de GitHub, cela va créer un merge-commit nommé "Merge pull request #1234 from User/Branch". Ce commit apparaîtra alors avec l'ensemble des autres dans le journal des PR. Chaque commit présentera une date unique, à laquelle il a été créé et non pas celle où il a été validé (merged).
Écraser (Squashing)
Lorsque vous écraser les commits, vous créez un commit unique composé de l'ensemble des commits originaux. Ce commit unique est alors poussé au Master et peut être nommé de façon standardisée.
Recommandation
Dans la plupart des cas, nous d'écraser les commits. Le bouton "Merge" de GitHub devraient uniquement être utilisé pour des PR simples avec quelques commits et datant de quelques jours. C'est notamment les cas pour des PR simples traitant de styles ou des chaînes de langue.
Les conventions de nommage
Lors de l'écrasement de commits, il vous faut suivre des conventions de nommage afin de faciliter la lecture du journal.
Format
- <[Prefix]> <Title>. <Issue>
- <Description>
Préfixes
Préfixe | Signification |
---|---|
sec | Sécurité |
bug | Correctif d'anomalie |
add | Ajouter |
rem | Supprimer |
lang | Langue |
doc | Documentation / Notes |
imp | Amélioration |
tests | Tests |
Un commit peut avoir plusieurs préfixes. Si c'est le cas, chacun sera placé dans ses propres brackets.
Titre
Utilisez un titre descriptif pour le commit. Généralement, le titre du PR conviendra parfaitement.
Anomalie
Après le titre, il convient d'ajouter un point suivi d'un texte comme "Closes #1234". Cela va automatiquement fermer le PR lorsque le commit sera appliqué et fournira également un lien vers le PR. Pour connaitre les mots clés disponibles, veuillez consulter : https://help.github.com/articles/closing-issues-via-commit-messages.
Description
La description est facultative. Elle peut contenir des informations supplémentaires au commit. Habituellement, ceci n'est pas nécessaire puisque les informations sont disponibles dans le rapport du PullRequest.
Exemple
- [lng] Clarify content smart search plugins. Closes #1833