Format: <type>(<scope>): <subject>
<scope>
is optional
feat: add hat wobble
^--^ ^------------^
| |
| +-> Summary in present tense.
|
+-------> Type: tech, docs, feat, fix, text, ref, test.
More Examples:
feat
: new feature for the user, not a new feature for build scriptfix
: bug fix for the business logic, not a fix to a build scriptref
: refactoring of business logic or removing a featuretext
: text formatting, reword, etctech
: technical code changes, eg. renaming a variable, update dependency version, etc, no business logic changedocs
: changes to the documentationtest
: adding missing tests, refactoring tests; no business logic code change
If commit introduces breaking change, it should be specified in square parents in the end of commit message eg
fix: only admins can delete users [breaking]
Semantically docs
, text
and test
should never introduce breaking changes
Reference: https://www.conventionalcommits.org