Webux Lab

Par Studio Webux

Commit Lint

TG
Tommy Gingras Studio Webux S.E.N.C 2021-04-30

Introduction

commit-lint est un outil complet et facile à utiliser pour standardiser les messages des commit. Cet outil s’assure que les messages respectent cette convention : Conventional Commits

Comment l’utiliser

Les commandes sont lancées avec Git Bash

À la racine de votre projet, lancer ce qui suit,

Il est très important de lancer la commande en utilisant le --save-dev pour seulement installer les packages suivant en mode développement. C’est important pour des raisons d’optimisation et de sécurité.

npm install --save-dev @commitlint/config-conventional @commitlint/cli

La configuration utilisée est celle par défaut.

Créer le fichier de configuration de commit-lint

Lancer tout simplement cette commande à la racine de votre projet :

echo "module.exports = {extends: ['@commitlint/config-conventional']}" > commitlint.config.js

Ensuite, pour utiliser cet outil, il faut ajouter un git hook, pour ce faire nous allons utiliser le module Husky

npm install --save-dev husky
npx husky install

Puis vous devez créer un fichier dans le répertoire de .husky/

Créer un fichier nommé commit-msg, puis ajouter le contenu suivant:

#!/bin/sh
. "$(dirname "$0")/_/husky.sh"

npx --no-install commitlint --edit $1

Structure:

.husky/
    _/
    .gitignore
    commit-msg
    pre-commit
    pre-push
commitlint.config.js
package.json
lerna.json
license.txt
README.md

Donc à partir de maintenant, vos messages de commit doivent respecter la convention pour pouvoir pousser vos changements.

Voici les types communs (Copié de la page github)

build
ci
chore
docs
feat
fix
perf
refactor
revert
style
test

Exemples

git add .

git commit -m "feat: Added new function for ABC-123"
git commit -m "ci: Added environment variable for github actions"
git commit -m "docs: Added Quickstart section"

git push origin feature/ABC-123

Conclusion

Voir les articles suivants pour plus d’information:


Recherche