Husky + lint-staged
Testing 🟡 MidDéfinition
Husky exécuté des gît hooks (pre-commit, pre-push) et lint-staged applique des commandes (lint, format) uniquement sur les fichiers stages. Ensemble, ils garantissent la qualité avant chaque commit.
Analogie
Comme un vigile a l'entrée d'un club : il vérifie la tenue de chaque personne (fichier) avant de la laisser entrer (commiter).
Exemple de code
// package.json
{
"lint-staged": {
"*.{js,ts}": ["eslint --fix", "prettier --write"],
"*.css": ["prettier --write"]
}
}
// .husky/pre-commit
// npx lint-staged
Cas d'usage
Pour bloquer automatiquement les commits contenant des erreurs de lint ou de formatage.
Anti-pattern
Exécuter le lint sur tout le projet au lieu des fichiers stages, rendant le hook pre-commit trop lent.