Git hooks made easy

Husky can prevent bad git commit
, git push
and more 🐶 woof!
If Husky is saving you time, please consider supporting its development on Patreon 🙏 thank you!
npm install husky --save-dev
// package.json
{
"husky": {
"hooks": {
"pre-commit": "npm test",
"pre-push": "npm test",
"...": "..."
}
}
}
git commit -m 'Keep calm and commit'
To go further, see the docs here.
npm uninstall husky
Simply move your existing hooks to husky.hooks
field and use raw Git hooks names. Also, if you're using the GIT_PARAMS
env variable, rename it to HUSKY_GIT_PARAMS
.
{
"scripts": {
- "precommit": "npm test",
- "commitmsg": "commitlint -E GIT_PARAMS"
},
+ "husky": {
+ "hooks": {
+ "pre-commit": "npm test",
+ "commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
+ }
+ }
}
Alternatively, you can run the following command which will do the same automatically for you ;)
./node_modules/.bin/husky-upgrade
Starting with 1.0.0
, you can also configure hooks using .huskyrc
, .huskyrc.json
or .huskyrc.js
file.
// .huskyrc
{
"hooks": {
"pre-commit": "npm test"
}
}
To view the full list of changes, please see the CHANGELOG.
pre-commit
, pre-push
, ...)MIT
Patreon - Supporters ✨