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 revisionPrevious revision
Next revision
Previous revision
mantisbt:git_commit_messages [2014/05/27 08:46] – Word wrapping in vi dregadmantisbt:git_commit_messages [2018/02/06 08:35] (current) – [Checklist] Bug reference examples dregad
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.txt · Last modified: 2018/02/06 08:35 by dregad

Driven by DokuWiki