Utiliser des émojis pour améliorer les messages de commits

Publié le 2020/08/09 (format ISO 8601) ~ 3 min.

Il y a toujours une galère lors du choix du message de commits. C'est compliqué et on finis souvent avec des messages peu clairs du genre "Improve clarity"

Depuis, certaines conventions sont apparues comme celle d'Angular ou plus récemment la Conventional Commits. Et si on mettais des émojis pour rendre tout ça plus claire ? 🤘

Et c'est là qu'interviens Gitmoji : mettre du sens dans les émojis pour les messages de commits. Par exemple, on peut avoir :

✨ Add new feature X

🍱 update favicon

🔥 remove unused css files

Les gitmojis comme :sparkles: peuvent être écrit pour les plateformes supportant le GFM (notamment Github et Gitlab).

Avantages et inconvénients

En ➕

  • les émojis sont plus précis que les conventions, il en existe un certain nombre
  • la lecture du message de commit est simplifiée et universelle
  • et c'est quand même bien kiffant

En ➖

  • il faut connaître leur sens
  • écrire des gitmojis peut être fastidieux

Pour ces points négatifs, il existe des solutions partielles :

D'abord la liste peut paraître impressionnante, et elle l'est ! On peut commencer par un petit ensemble des gitmojis les plus utilisés et génériques.

code émoji Sens
:sparkles: Ajout d'une nouvelle fonctionnalitée
:bug: 🐛 Corriger un bug
:recycle: ♻️ Refactoring de code
:fire: 🔥 Suppresion de code ou de fichiers
:pencil: 📝 Écriture de documentation
:bulb: 💡 Ajout ou modification de commentaires dans le code source

Ensuite, il faut les saisir. Des outils existent pour cela, par exemple entre autres, le site officiel qui permet de copier-coller les codes gitmoji ou directement les émojis (le CTRL+F augmente grandement la vitesse de recherche); ou un outil en CLI; ou bien une extension pour navigateur ✌️ rendent la vie plus pratique.

✨ Adopter une convention simple

La convention majoritairement utilisée par la communauté de Gitmoji est simple : <gitmoji> Description. Le premier mot de la description commence par une majuscule. Voilà, c'est tout. Simple 💯
Après plusieurs mois d'utilisation, rajouter une portée sur certains messages me semble bien utile, comme : <gitmoji>(scope):. Parfois cela s'y prête bien ! Parfois moins. Certains émojis n'ont pas besoin de portée : comme 🙈 signifie « Add or update a .gitignore file. », la portée est déjà incluse dans la signification du gitmoji.

En bref

Gitmoji c'est génial et fun, alors autant l'utiliser 😄 Que vos messages de commits soient joyeux et clairs !

Tags : #gitmoji, #git, #astuce,