diff options
Diffstat (limited to 'docs/contrib_rules.md')
-rw-r--r-- | docs/contrib_rules.md | 38 |
1 files changed, 27 insertions, 11 deletions
diff --git a/docs/contrib_rules.md b/docs/contrib_rules.md index a4f4f0d..e085f23 100644 --- a/docs/contrib_rules.md +++ b/docs/contrib_rules.md @@ -1,16 +1,17 @@ # Using Contrib Rules + _Introduced in gitlint v0.12.0_ Contrib rules are community-**contrib**uted rules that are disabled by default, but can be enabled through configuration. Contrib rules are meant to augment default gitlint behavior by providing users with rules for common use-cases without forcing these rules on all gitlint users. This also means that users don't have to -re-implement these commonly used rules themselves as [user-defined](user_defined_rules) rules. +re-implement these commonly used rules themselves as [user-defined](user_defined_rules.md) rules. -To enable certain contrib rules, you can use the ```--contrib``` flag. +To enable certain contrib rules, you can use the `--contrib` flag. ```sh $ cat examples/commit-message-1 | gitlint --contrib contrib-title-conventional-commits,CC1 -1: CC1 Body does not contain a 'Signed-Off-By' line +1: CC1 Body does not contain a 'Signed-off-by' line 1: CL1 Title does not start with one of fix, feat, chore, docs, style, refactor, perf, test: "WIP: This is the title of a commit message." # These are the default violations @@ -20,7 +21,7 @@ $ cat examples/commit-message-1 | gitlint --contrib contrib-title-conventional-c 3: B1 Line exceeds max length (123>80): "Lines typically need to have a max length, meaning that they can't exceed a preset number of characters, usually 80 or 120." ``` -Same thing using a ```.gitlint``` file: +Same thing using a `.gitlint` file: ```ini [general] @@ -36,12 +37,14 @@ types = bugfix,user-story,epic You can also configure contrib rules using [any of the other ways to configure gitlint](configuration.md). -# Available Contrib Rules +## Available Contrib Rules ID | Name | gitlint version | Description ------|-------------------------------------|------------------ |------------------------------------------- CT1 | contrib-title-conventional-commits | >= 0.12.0 | Enforces [Conventional Commits](https://www.conventionalcommits.org/) commit message style on the title. -CC1 | contrib-requires-signed-off-by | >= 0.12.0 | Commit body must contain a `Signed-Off-By` line. +CC1 | contrib-body-requires-signed-off-by | >= 0.12.0 | Commit body must contain a `Signed-off-by` line. +CC2 | contrib-disallow-cleanup-commits | >= 0.18.0 | Commit title must not contain `fixup!`, `squash!`, `amend!`. +CC3 | contrib-allowed-authors | >= 0.18.0 | Enforce that only authors listed in the `AUTHORS` file are allowed to commit. ## CT1: contrib-title-conventional-commits ## @@ -53,15 +56,28 @@ CT1 | contrib-title-conventional-commits | >= 0.12.0 | Enforces [C Name | gitlint version | Default | Description ---------------|--------------------|--------------|---------------------------------- -types | >= 0.12.0 | `fix,feat,chore,docs,style,refactor,perf,test,revert` | Comma separated list of allowed commit types. +types | >= 0.12.0 | `fix,feat,chore,docs,style,refactor,perf,test,revert,ci,build` | Comma separated list of allowed commit types. -## CC1: contrib-requires-signed-off-by ## +## CC1: contrib-body-requires-signed-off-by ## ID | Name | gitlint version | Description ------|---------------------------------------|--------------------|------------------------------------------- -CC1 | contrib-requires-signed-off-by | >= 0.12.0 | Commit body must contain a `Signed-Off-By` line. This means, a line that starts with the `Signed-Off-By` keyword. +CC1 | contrib-body-requires-signed-off-by | >= 0.12.0 | Commit body must contain a `Signed-off-by` line. This means, a line that starts with the `Signed-off-by` keyword. + + +## CC2: contrib-disallow-cleanup-commits ## + +ID | Name | gitlint version | Description +------|----------------------------------|--------------------|------------------------------------------- +CC2 | contrib-disallow-cleanup-commits | >= 0.18.0 | Commit title must not contain `fixup!`, `squash!` or `amend!`. This means `git commit --fixup` and `git commit --squash` commits are not allowed. + +## CC3: contrib-allowed-authors ## + +ID | Name | gitlint version | Description +------|----------------------------------|--------------------|------------------------------------------- +CC3 | contrib-allowed-authors | >= 0.18.0 | The commit author must be listed in an `AUTHORS` file to be allowed to commit. Possible file names are also `AUTHORS.txt` and `AUTHORS.md`. +## Contributing Contrib rules -# Contributing Contrib rules -We'd love for you to contribute new Contrib rules to gitlint or improve existing ones! Please visit the [Contributing](contributing) page on how to get started.
\ No newline at end of file +We'd love for you to contribute new Contrib rules to gitlint or improve existing ones! Please visit the [Contributing](contributing.md) page on how to get started. |