git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jeremy Morton <admin@game-point.net>
To: Robin Rosenberg <robin.rosenberg@dewire.com>
Cc: git@vger.kernel.org
Subject: Re: Recording the current branch on each commit?
Date: Sun, 27 Apr 2014 18:27:20 +0100	[thread overview]
Message-ID: <535D3DF8.4020904@game-point.net> (raw)
In-Reply-To: <1748955386.11457068.1398588660139.JavaMail.zimbra@dewire.com>

On 27/04/2014 09:51, Robin Rosenberg wrote:
>> Currently, git records a checksum, author, commit date/time, and commit
>> message with every commit (as get be seen from 'git log').  I think it
>> would be useful if, along with the Author and Date, git recorded the
>> name of the current branch on each commit.  The branch name can provide
>> useful contextual information.  For instance, let's say I'm developing a
>> suite of games.  If the commit message says "Added basic options
>> dialog", it might be useful to see that the branch name is
>> "pacman-minigame" indicating that the commit pertains to the options
>> dialog in the Pacman minigame.  Basically, I'm saying that well-named
>> branches can and do carry useful contextual information that oughtn't to
>> be thrown away.  Currently, when you delete that branch, you lose the
>> branch name altogether.
>>
>> So what do you think?  Would it be good to have a patch to add this feature?
>
> Branch names are usually poorly named, so often you don't lose much. One way

Speak for yourself - I give my branches useful names.  :-)  I definitely 
feel that I am often losing useful contextual information by throwing 
away the branch name.

> some people to is to always merge with --no-ff, that way you see the branch
> name in the merge commit.

But surely, it's recommended with Git that you try to avoid doing 
--no-ff merges to avoid commit noise?  Also, it is a lot more hassle 
(and no doubt, CPU cycles) to track down where a branch was merged to 
try and figure out which branch name a commit pertained to, not to 
mention the fact that the commit could've been moved since.  Nothing 
short of tagging the commit with the branch name when the commit is made 
will definitely record the branch name at the time of committing.

> A very popular way of tracking context is to add some id, such as a bugzilla issue
> number, to the header or footer of the commit message. Often a branch contains many
> issues, but the branch itself isn't very interesting. Tools like gitblit, gitweb,
> gerrit etc can easily be configured to link to the issue using a regular expression.

Yes, and I have done this kind of thing in the past.  However you really 
don't want to put the bug# on every single commit pertaining to that 
bug; you have to go to the effort of looking the bug# up every time, 
you'll sometimes forget, and besides it takes up space that could be 
used for a commit message.  As short commit messages are valued in Git, 
it's particularly bad to waste space this way.  Much better would be to 
include the bug# as part of the branch name, and then if you record the 
branch name upon checkin you always get a reference to the bug#.

Also, you don't always have something you can link a commit to in an 
issue tracker.  You may just be implementing a feature that has been 
agreed upon, independently of any such tracker.  In that case, there's 
no bug# to link to.

-- 
Best regards,
Jeremy Morton (Jez)

  reply	other threads:[~2014-04-27 17:27 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-26 23:56 Recording the current branch on each commit? Jeremy Morton
2014-04-27  8:51 ` Robin Rosenberg
2014-04-27 17:27   ` Jeremy Morton [this message]
2014-04-27 21:40     ` James Denholm
2014-04-27 22:12       ` Jeremy Morton
2014-04-27 22:31         ` James Denholm
2014-04-28  8:32     ` Felipe Contreras
2014-04-28  8:49       ` Jeremy Morton
2014-04-28  9:02         ` David Kastrup
2014-04-28  9:10           ` Jeremy Morton
2014-04-28  9:23             ` David Kastrup
2014-04-29 21:58               ` David Lang
2014-04-28 17:31     ` Junio C Hamano
2014-04-27  9:09 ` Johan Herland
2014-04-27 17:38   ` Jeremy Morton
2014-04-27 19:33     ` Johan Herland
2014-04-27 20:55       ` Jeremy Morton
2014-04-27 23:39         ` Johan Herland
2014-04-28  6:45           ` Christian Couder
2014-04-28  9:01             ` Jeremy Morton
2014-04-28  9:09               ` Johan Herland
2014-04-28  9:16                 ` Jeremy Morton
2014-04-29 22:14                   ` David Lang
2014-04-28  9:01         ` Felipe Contreras
2014-04-28  9:17           ` Jeremy Morton
2014-04-28  9:17             ` Felipe Contreras
2014-04-28  9:35               ` Jeremy Morton
2014-04-28 17:10                 ` Felipe Contreras
2014-04-28  9:39           ` David Kastrup
2014-04-28 17:22             ` Felipe Contreras
2014-04-28 23:03               ` James Denholm
2014-04-28 23:09                 ` Felipe Contreras
2014-04-28 23:40                   ` Junio C Hamano
2014-04-28 23:50                     ` Felipe Contreras
2014-04-29  0:10                       ` Junio C Hamano
2014-04-29  0:59                         ` Felipe Contreras
2014-04-29  1:29                   ` James Denholm
2014-04-29  3:32                     ` Felipe Contreras
2014-04-29  6:53                       ` James Denholm
2014-04-29  8:28                         ` Felipe Contreras
2014-04-29  9:00                           ` David Kastrup
2014-04-29  9:25                             ` Felipe Contreras
2014-04-29  9:47                               ` David Kastrup
2014-04-29  9:54                                 ` Felipe Contreras
2014-04-29 10:14                                   ` David Kastrup
2014-04-29 10:17                                     ` Felipe Contreras
2014-04-29 10:37                                       ` David Kastrup
2014-04-29 11:46                                         ` Felipe Contreras
2014-04-29 10:59                                       ` James Denholm
2014-04-29 11:47                                         ` Felipe Contreras
2014-04-29 12:25                                           ` James Denholm
2014-04-29 13:31                                             ` Felipe Contreras
2014-04-29 21:04                                               ` James Denholm
2014-04-29 21:45                                                 ` Felipe Contreras
2014-04-29 22:25                                                   ` James Denholm
2014-04-29 23:05                                                     ` Felipe Contreras
2014-04-30  0:22                                                       ` James Denholm
2014-04-30  0:44                                                         ` Felipe Contreras
2014-04-30  1:11                                                           ` James Denholm
2014-04-29 21:48                                       ` Piotr Krukowiecki
2014-04-29  8:34                       ` Robin Rosenberg
2014-04-28  2:30       ` Sitaram Chamarty
2014-04-28  8:52         ` Jeremy Morton
2014-04-28 10:03           ` Sitaram Chamarty
2014-04-28  6:07       ` David Kastrup
2014-04-28 10:03         ` Sitaram Chamarty
2014-04-28 16:38           ` Johan Herland
2014-04-28  8:57       ` Felipe Contreras
2014-04-28  8:50     ` Felipe Contreras
  -- strict thread matches above, loose matches on Subject: below --
2014-04-28  6:36 Max Kirillov
2014-04-28 18:15 ` Junio C Hamano
2014-04-30  4:04   ` Max Kirillov
2014-04-28  6:42 Max Kirillov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=535D3DF8.4020904@game-point.net \
    --to=admin@game-point.net \
    --cc=git@vger.kernel.org \
    --cc=robin.rosenberg@dewire.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).