1.3.0 • Published 3 years ago
@lcdev/commitlint v1.3.0
Commitlint Config
This is our standard configuration for commitlint which we use to keep our git histories consistent.
yarn add @lcdev/commitlint@VERSION
Install commitlint and husky
yarn add -D @commitlint/cli@8 husky@3
Add to your package.json
, usually at the bottom:
"commitlint": {
"extends": [
"@lcdev/commitlint"
]
},
"husky": {
"hooks": {
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
}
}
This will check commit messages whenever someone finishes work. The rules are extremely simple and easy to follow.
A normal commit message looks like:
feat(#192): finishes feature X by client request
The (#192)
part of the message is optional. This just allows linking back
to gitlab issues easily, so you can find the one thing you did 6 months ago.
Try to speak in terms of 'what does this commit do?' - it 'finishes feature X'. Obviously, the better the message, the less pain you will have down the line, but a linter can't enforce that.
Commits are prefixed using:
build
ci
chore
docs
feat
fix
feedback
perf
refactor
revert
style
test
cleanup
config