-
Notifications
You must be signed in to change notification settings - Fork 16
Semantic Commit Messages
A specification for adding human and machine readable meaning to commit message.
<type>[optional scope]: <description>
[optional body]
[optional footer]
feat: add hat wobble
^--^ ^------------^
| |
| +-> Summary in present tense.
|
+-------> Type: chore, docs, feat, fix, refactor, style, or test.
First line cannot be longer than 70 characters, second line is always blank and other lines should be wrapped at 80 characters.
Allowed <type>
values:
-
feat
: (new feature for the user, not a new feature for build script) -
fix
: (bug fix for the user, not a fix to a build script) -
docs
: (changes to the documentation) -
style
: (formatting, missing semi colons, etc; no production code change) -
refactor
: (refactoring production code, eg. renaming a variable) -
test
: (adding missing tests, refactoring tests; no production code change) -
chore
: (updating grunt tasks etc; no production code change)
Example <scope>
values:
- init
- runner
- watcher
- config
- web-server
- proxy
- etc.
The <scope>
can be empty (eg. if the change is a global or difficult to assign to a single component), in which case the parentheses are omitted.
- uses the imperative, present tense: “change” not “changed” nor “changes”
- includes motivation for the change and contrasts with previous behavior
Example message body:
Rename the iVars to remove the common prefix.
Closed issues should be listed on a separate line in the footer prefixed with "Closes" keyword like this:
Closes #234
or in case of multiple issues:
Closes #123, #245, #992
All breaking changes have to be mentioned in footer with the description of the change, justification and migration notes.
BREAKING CHANGE:
`port-runner` command line option has changed to `runner-port`, so that it is
consistent with the configuration file syntax.
To migrate your project, change all the commands, where you use `--port-runner` to `--runner-port`.