Git commits
Commit message linters
commitizen
commitlint
- Website
- GitHub
- Getting started
- Rules
- Official container image
- 3rd party pre-commit hooks only:
Install:
npm install -g @commitlint/cli @commitlint/config-conventional
System packages:
pamac install commitlint-config-conventional commitlint
Issue: Cannot find module "@commitlint/config-conventional" from "/home/varac"
Configure:
echo -e 'extends:\n - "@commitlint/config-conventional"' > ~/.commitlintrc.yaml
Usage:
Check last commit:
commitlint --from HEAD~1 --to HEAD --verbose
Limitations:
- Requires a config file even for simple custom rules
pre-commit checks
- Verify that a commit message contains some string with pre-commit
- Disadvantage: Doesn't give any hint what is wrong with the commit msg
Stale projects
gitlint
Add a default .gitlint file:
gitlint generate-config
Ignore body-is-missing rule:
echo '[general]\nignore=body-is-missing' > .gitlint