User Tools

  • Logged in as: anonymous (anonymous)
  • Log Out

Site Tools


mantisbt:git_commit_messages

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
mantisbt:git_commit_messages [2014/05/27 08:46]
dregad Word wrapping in vi
mantisbt:git_commit_messages [2018/02/06 08:35] (current)
dregad [Checklist] Bug reference examples
Line 25: Line 25:
     * Description must be **understandable** for everyone     * Description must be **understandable** for everyone
   - **Bug reference**   - **Bug reference**
-    * Optional, but most commits should reference an issue in the [[http://​mantisbt.org/​bugs|bugtracker]],​ formatted for use by the **Source Integration** plugin+    * Optional, but most commits should reference an issue in the [[http://​mantisbt.org/​bugs|bugtracker]],​ formatted for use by the **Source Integration** plugin ​\\ e.g. ''​Fixes #​1234'',​ ''​Issues #123, #​456''​
   - **Sign-off** if the commit'​s author is not a MantisBT core developer   - **Sign-off** if the commit'​s author is not a MantisBT core developer
  
Line 82: Line 82:
  
   * **vi/vim** <​code>​$ git config --global core.editor "vi -c ':set textwidth=72'"</​code>​ and use the ''​gq''​ command to reflow the text, e.g. ''​gqG''​ from current line to end of file   * **vi/vim** <​code>​$ git config --global core.editor "vi -c ':set textwidth=72'"</​code>​ and use the ''​gq''​ command to reflow the text, e.g. ''​gqG''​ from current line to end of file
 +
 +
 +
  
 ==== Description ==== ==== Description ====
 +
 +=== Contents ===
  
 The commit'​s Description should be as long as necessary, and in terms of contents, must  The commit'​s Description should be as long as necessary, and in terms of contents, must 
Line 98: Line 103:
   * give **credit** to the original author. \\ Use ''​git commit --author='',​ or at least name the person in the text.   * give **credit** to the original author. \\ Use ''​git commit --author='',​ or at least name the person in the text.
  
-  * be **signed off** by the committer if different from author ​\\ Use ''​git commit ​-s''​+  * be **signed off** by the committer if different from author ​(see [[git_commit_messages#​sign-off|below]])
  
-With regards to formatting+=== Formatting ===
  
   * Separate paragraphs with 2 newlines   * Separate paragraphs with 2 newlines
Line 109: Line 114:
 - bullet 3 - bullet 3
 </​code>​ </​code>​
 +
 +=== Sign-off ===
 +
 +When committing changes submitted by non-core team members, the commit must be signed off by the committer in the case of individual commits (use ''​git commit -s''​).
 +This is not necessary when merging several commits as a feature branch, as the merge commit itself will serve as sign off.
 +
 +===== Examples =====
 +
 +Based on model message in Tim Pope's blog post (see [[git_commit_messages#​references|references]]).
 +
 +<​code>​
 +Capitalized,​ short summary (50 chars or less)
 +
 +More detailed explanatory text, if necessary, wrapped to 72 characters.
 +In some contexts, the first line is treated as the subject of an email
 +and the rest of the text as the body. The blank line separating the
 +summary from the body is critical (unless you omit the body entirely);
 +tools like rebase can get confused if you run the two together.
 +
 +Write your commit message in the imperative: "Fix bug" and not "Fixed
 +bug" or "Fixes bug." This convention matches up with commit messages
 +generated by commands like git merge and git revert.
 +
 +You can have the Source Integration plugin automatically reference
 +mantisbt.org issues #1234, #1235 (the changeset will be linked to the
 +issues when pushed).
 +
 +Further paragraphs come after blank lines.
 +
 +- Bullet points are okay, too
 +- Typically a hyphen or asterisk is used for the bullet
 +- Add blank lines between bullets if needed for clarity
 +- Use a hanging indent when a bullet'​s text is too long to fit on a
 +  single line
 +
 +Fixes #5678 (commit will be linked to the issue, which will be marked as
 +resolved when pushing the commit).
 +
 +Signed-off-by:​ Core Developer <​coredev@mantisbt.org>​
 +</​code>​
 +
  
 ===== References ===== ===== References =====
Line 118: Line 164:
   * [[https://​wiki.openstack.org/​wiki/​GitCommitMessage|OpenStack'​s GIT Commit Good Practice]]   * [[https://​wiki.openstack.org/​wiki/​GitCommitMessage|OpenStack'​s GIT Commit Good Practice]]
   * [[http://​who-t.blogspot.de/​2009/​12/​on-commit-messages.html|Who-T blog on commit messages]]   * [[http://​who-t.blogspot.de/​2009/​12/​on-commit-messages.html|Who-T blog on commit messages]]
 +  * [[http://​chris.beams.io/​posts/​git-commit/​|How to Write a Git Commit Message?]]
 +
 +===== To do =====
 +
 +Grangeway suggested to implement a commit hook to perform validation on commit message, e.g.
 +http://​addamhardy.com/​blog/​2013/​06/​05/​good-commit-messages-and-enforcing-them-with-git-hooks/​
  
mantisbt/git_commit_messages.1401194808.txt.gz ยท Last modified: 2014/05/28 05:08 (external edit)