Commitizen adapter following the conventional-changelog format, with emojis. 🎉
npm install @metahub/cz-conventional-commitcommitizen adapter following the conventional-changelog format, with emojis and additionnal commit types (aliases).




``bash`
npm install --global commitizen @metahub/cz-conventional-commit`
Create a .czrc file in your home directory, with the following content:json`
{
"path": "@metahub/cz-conventional-commit",
"cz-conventional-commit": {
"maxSubjectLength": 72,
"bodyLineLength": 100
}
}git cz
Now cd into any git repository and use instead of git commit and you will find the commitizen prompt.
See commitizen documentation for more informations.
bash
npm install --save-dev commitizen @metahub/cz-conventional-commit
./node_modules/.bin/commitizen init @metahub/cz-conventional-commit --save-dev
`
You can customize cz-conventional-commit in package.json:
`json
...
"config": {
"commitizen": {
"path": "@metahub/cz-conventional-commit",
"cz-conventional-commit": {
"maxSubjectLength": 72,
"bodyLineLength": 100,
"emoji": true
}
}
}
...
`See commitizen documentation for more informations.
Options
| Option | Description | Default |
| ------------------ | ------------------------------------------------------------------------------------------ | ------- |
|
maxSubjectLength | Length at which to truncate the commit head (head includes type, scope, subject and emoji) | 72 |
| bodyLineLength | Length at which to wrap body lines | 100 |
| emoji | To add and emoji at the end of the commit message | false |Commit types
| Commit Type | Title | Description | Emoji |
|-------------|--------------------------|-------------------------------------------------------------------------------------------------------------|:-----:|
|
feat | Features | A new feature | ✨ |
| fix | Bug Fixes | A bug Fix | 🐛 |
| docs | Documentation | Documentation only changes | 📚 |
| style | Styles | Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc) | 💎 |
| refactor | Code Refactoring | A code change that neither fixes a bug nor adds a feature | 📦 |
| perf | Performance Improvements | A code change that improves performance | 🚀 |
| test | Tests | Adding missing tests or correcting existing tests | 🚨 |
| build | Builds | Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm) | 🛠 |
| ci | Continuous Integrations | Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs) | ⚙️ |
| chore | Chores | Other changes that don't modify src or test files | ♻️ |
| revert | Reverts | Reverts a previous commit | 🗑 |Commit aliases
Aliases are additionnal commit types that will be formatted to follow AngularJS Commit Message Conventions and automatically set some fields.
For example when choosing
initial, cz-conventional-commit will automatically set:
- the standard type to feat
- the scope to empty
- the subject to 'Initial commit 🎉'
- the issues to empty
- the breaking to emptyThe commit message will be
feat: Initial commit 🎉.| Commit Type | Type | Scope (default) | Subject (default) | Emoji |
|--------------------|---------|-----------------|-------------------|:-----:|
|
initial | feat | empty | Initial commit | 🎉 |
| dependencies | fix | package | - | ⏫ |
| peerDependencies | fix | package | - | ⬆️ |
| devDependencies | chore | package | - | 🔼 |
| metadata | fix` | package | - | 📦 |- conventional-changelog-metahub - List of conventional commit types and aliases for this module