Easily format and standardize your commits for all your javascript projects using Git.
$ npm i format-commit --save-dev
In the scripts part of your package.json file add a new line "commit": "format-commit"
and use $ npm run commit
to commit your changes with format-commit.
Or install format-commit globally to use directly $ format-commit
command .
The first time you use the command within your project, format-commit will ask you some questions to configure your commits and create a configuration file commit-config.json
at the root of your project.
If you want to change format-commit configuration without manually editing the json file you can run the command $ format-commit --config
.
Property | Description |
---|---|
format | Format option for your commit titles. 1 - (type) Name / 2 - (type) name 3 - type: Name / 4 - type: name 5 - type(scope) Name / 6 - type(scope) name 7 - type(scope): Name / 8 - type(scope): name |
types | The different types of commit allowed. Not defined during assisted configuration, default values used: feat / fix / core / test / config / doc |
scopes | Your application's scopes to categorize your commits (only for related formats 5 to 8). Not defined during assisted configuration |
minLength | Minimum size allowed for your commit titles |
maxLength | Maximum size allowed for your commit titles |
changeVersion | "always": All commits must obligatorily involve a change of version (no preliminary request). "only on release branch": All commits on your release/main branch must obligatorily involve a change of version (no preliminary request). "never": Commits do not necessarily lead to a version change whatever the branch, the wizard will always ask. |
releaseBranch | Release/main Git branch of your project. Use if changeVersion is defined on "only on release branch". |
showAllVersionTypes | Show all possible types of version changes in the wizard, or show only the main ones (major / minor / patch / <custom>) |
stageAllChanges | Auto-stage all changes before each commit |