@episerver/commitlint-config v1.1.1
@episerver/commitlint-config
Shareable commitlint
config enforcing the Episerver commit convention.
Installation
yarn
yarn add --dev @commitlint/cli @episerver/commitlint-config
npm
npm install --save-dev @commitlint/cli @episerver/commitlint-config
Usage
Configure commitlint to use the episerver configuration via a commitlint.config.js
file or a commitlint
field in package.json
.
commitlint.config.js
module.exports = {
extends: ['@episerver']
};
package.json
"commitlint": {
"extends": ["@episerver"]
}
Commit Message Format
Commits should adhere to the following format:
<type>(<scope>): <subject>
<body>
<footer>
<references>
The following rules apply to the above format:
- A commit message consists of a header, body, footer, and references.
- The header is the only mandatory part of the commit message.
- The header must have a type and a subject; scope is optional.
- Scope should be surrounded by parenthesis; otherwise they are omitted.
- The type and scope should be lower case.
- The subject and body should be sentence case.
- The subject should not end with a dot.
- The header line is limited to 72 characters.
- Any other line should be wrapped at 100 characters.
Types
Must be one of the following:
Type | Description |
---|---|
chore | Build process or auxiliary tool changes |
docs | Documentation only changes |
feat | A new feature |
fix | A bug fix |
refactor | A code change that neither fixes a bug or adds a feature |
release | Create a release commit |
revert | Revert a previous commit |
test | Add missing tests |
Revert
If the commit reverts a previous commit, it should begin with revert:
, followed by the header of the reverted commit. In the body it should say: This reverts commit <hash>.
, where the hash is the SHA of the commit being reverted.
Footer
The footer should only contain information about breaking changes and should use the following format:
BREAKING CHANGE: <description>
The description should be a concise explanation of the breaking change. The body can be omitted if the breaking change description and subject give enough information to understand the commit.