Simple git hooks
npm install ghooks --save-dev
It is not advised to install ghooks
as a production dependency, as it will install git hooks in your production environment as well. Please install it under the devDependencies
section of your package.json
.
Add a config.ghooks
entry in your package.json
and simply specify which git hooks you want and their corresponding commands, like the following:
{
…
"config": {
"ghooks": {
"pre-commit": "node_modules/.bin/gulp lint",
"pre-push": "make test",
"post-merge": "npm install",
"post-rewrite": "npm install",
…
}
}
…
}
All documented hooks are available:
- applypatch-msg
- pre-applypatch
- post-applypatch
- pre-commit
- prepare-commit-msg
- commit-msg
- post-commit
- pre-rebase
- post-checkout
- post-merge
- pre-push
- pre-receive
- update
- post-receive
- post-update
- pre-auto-gc
- post-rewrite
CAVEAT: At the moment, parameterized hooks (e.g. prepare-commit-msg
) don't receive any parameters, so their usage might be limited.
- Usage with git GUI clients – Thanks to @JamieMason
This module is heavily inspired by @nlf's precommit-hook
Huge thanks to everyone listed here!
This is licensed under the feel-free-to-do-whatever-you-want-to-do license – http://unlicense.org