Plugin for Commitizen that uses commitLint configuration. Allows you to use both Commitizen and commitLint with a single configuration.
You will first need to follow the commitizen and commitlint instalation instructions if you do not already have these installed.
Use npm or yarn to install commitiquette into your project.
npm install commitiquette --save-dev
Update package.json
Commitizen configuration.
"config": {
"commitizen": {
"path": "commitiquette"
}
},
The purpose of this project is to have a single configuration for both commitlint
and commitizen
-- while prompting the user for each answer.
Both of these wonderful projects are use the commitlint
config as well.
Commitiquette differs by using simple prompts, list selects whenever possible, for answers -- much like the cz-conventional-changelog
commitizen plugin.
Commitiquitte is fully configurable using the commitlint
configuration.
Examples
module.exports = {
extends: ['@commitlint/config-conventional'],
rules: {
'scope-empty': [2, 'always']
}
};
module.exports = {
extends: ['@commitlint/config-conventional'],
rules: {
'scope-enum': [2, 'always', ['docs', 'core', 'lib', 'misc', 'etc']]
}
};
Commitiquette will validate against all but the deprecated commitlint
rules.
NOTE: This is not a replacement for
commitlint
. Commitlint should still validate the message before each commit.
Where possible, commitlint rules will be used to filter messages.
Validation is run at Level Error (2) -- where filtering will apply at if the rule is set to Warn (1) or Error (2.)
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.