-
Notifications
You must be signed in to change notification settings - Fork 0
Commit Message Convention
A commit message consists of a header, a body and a footer, separated by a blank line.
Any line of the commit message cannot be longer than 100 characters! This allows the message to be easier to read on github as well as in various git tools.
<type>(<scope>): <subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>
Message Header
The message header is a single line that contains succinct description of the change containing a type, an optional scope and a subject.
#####<type>
This describes the kind of change that this commit is providing.
-
feat (feature)
-
fix (bug fix)
-
docs (documentation)
-
style (formatting, missing semi colons, …)
-
refactor
-
test (when adding missing tests)
-
chore (maintain)
#####<scope>
Scope can be anything specifying place of the commit change. For example events, authentication, loginPage, etc...
#####<subject>
This is a very short description of the change.
-
use imperative, present tense: “change” not “changed” nor “changes”
-
don't capitalize first letter
-
no dot (.) at the end
Message Body
-
It should be written, present tense e.g “change” not “changed” nor “changes”
-
It should include reason for the change and contrasts with previous behavior e.g http://365git.tumblr.com/post/3308646748/writing-git-commit-messages http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
Message Footer
It should be used for referencing issues and should be listed on a separate line: prefixed with "Finishes", "Fixes" , or "Delivers" keyword like this.
[(Finishes|Fixes|Delivers) #TRACKER_STORY_ID]
Message Example
feat(loginPage): implement exactly once delivery
- ensure bootstrap4 is used to design the page
- make page responsive [Delivers #130335785]