Read this in other languages: 繁體中文
Commit Lint Generator is a tool designed for inspecting commits. It takes a commitlintrc.js file as configuration, which defines hooks and various rules. You can specify the rule needed for inspection based on a particular hook. All available rules can be found at commitlint. For currently supported rules, refer to the Support rules section. Support for additional rules will be gradually added.
- Checks commit formats based on configured rules.
- Supports multilingual error messages.
- Complies with most POSIX standards.
- Supports any platform.
Define rules
You can define your team's commit standards in commitlintrc.js.
commitlintrc.js exports an array named config, containing rules specified for each hook.
The structure is defined as follows:
export const config = [
{
hook: "the hook that triggers",
lang: "en_us",
rules: [
{
name: "rule name",
level: "0 ignore, 1 yellow text, 2 red text",
applicable: "always | never when choosing never, it means to reverse the rule",
value: "rule value"
},
{
name: "header-max-length",
level: 2,
applicable: "always",
value: 10
},
// other rules...
]
}
]Using Docker and mounting the project's .git and commitlintrc.js.
docker run --rm -v $(pwd)/.git:/app/.git -v $(pwd)/commitlintrc.js:/app/commitlintrc.js leo03164/commitlint-generator
If you do not have nodejs installed, please install it first.
Version information: nodejs > 16.13.0
npm i -g commit-lint-generator
commitlint-generatorParser
- body-leading-blank
Header
- header-case
- header-full-stop
- header-max-length
- header-min-length
- header-trim
Type
- type-enum
- type-case
Body
- body-full-stop
- body-empty
- body-max-length
- body-max-line-length
- body-min-length
- body-case
Footer
- footer-empty
- footer-max-length
- footer-max-line-length
- footer-min-length

