From: Ed Hutchins <email@example.com> To: Matthieu Moy <Matthieu.Moy@grenoble-inp.fr> Cc: firstname.lastname@example.org Subject: Re: Feature request: "author branch" in commit object Date: Wed, 3 Jul 2013 08:47:17 -0700 [thread overview] Message-ID: <CADL+T9Z=SrVyMMnYk3M7Dmb4c5xGiQtCTiDYaceKwB2-51TVemail@example.com> (raw) In-Reply-To: <firstname.lastname@example.org> I'm not trying to change the way git does things (which works perfectly well), I'm asking for some extra information to be added to the commit so that analysis of the ancestry graph can be tied to the branch topics that the original author was working from. Currently if you have a rebase-branch/ff-merge-to-master workflow, the graph of commits looks like a single user produced all of the code. It would be very useful for both forensic and display purposes to categorize those commits by their original topics, but that history is lost in such a workflow. Certainly there are work-arounds (notes etc.) to capture this history, but I think that this is a basic feature which most projects would benefit from. I fully understand that branches are not global and that it may be confusing to keep an "author branch" name around in some cases, but the vast majority of cases where authors pick meaningful branch names would benefit from being able to look back and go "ah-ha! that was a commit to fix bug such-and-such" or "that was a commit from when I was working on super-cool feature X". Even just knowing that two commits were from different (or the same) branches would tell you something useful about the evolution of the project. Arguing that branch names are local and thus meaningless misses the point: branches are *names* which were meaningful to the author at the time the branch was being worked on. Discarding this information makes it harder to reason about or display the history of the project and is an irritating defect in an otherwise wonderful tool. On Wed, Jul 3, 2013 at 2:33 AM, Matthieu Moy <Matthieu.Moy@grenoble-inp.fr> wrote: > Ed Hutchins <email@example.com> writes: > >> I realize that branch names are ephemeral repo-specific things, but it >> would be really useful to be able to determine what branch a commit >> was authored from (as a hint to ancestry graph layout tools, for >> example). Is there any way to do this currently, is it planned, or >> would it be deemed useful enough to be worth adding to each commit >> object? > > FWIW, this is what Mercurial's "named branches" do. Instead of having > branches point to commit, each commit says what branch it belongs to. > > One drawback of this approach is that the branch name is part of the > commit and can't be changed without changing the commit's sha1. Hence, a > local, private, branch name becomes permanent the day it's merged > upstream. > > (for completeness: Mercurial also has essentially Git-like branches, > but they call this "bookmarks") > > -- > Matthieu Moy > http://www-verimag.imag.fr/~moy/
next prev parent reply other threads:[~2013-07-03 15:47 UTC|newest] Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top 2013-07-02 19:37 Ed Hutchins 2013-07-02 19:49 ` Fredrik Gustafsson 2013-07-02 20:00 ` Junio C Hamano 2013-07-02 20:34 ` Ed Hutchins 2013-07-03 16:16 ` Antoine Pelisse 2013-07-03 17:31 ` Ed Hutchins 2013-07-03 18:19 ` Junio C Hamano 2013-07-04 0:00 ` Andrew Ardill 2013-07-02 20:31 ` Johan Herland 2013-07-03 9:33 ` Matthieu Moy 2013-07-03 15:47 ` Ed Hutchins [this message] 2013-07-03 18:08 ` Junio C Hamano 2013-07-03 23:46 ` Feature request: Jakub Narebski 2013-07-03 23:52 ` Dany 2013-07-03 23:53 ` Dany 2013-07-04 8:08 ` Matthieu Moy 2013-07-09 21:46 ` Feature request: "author branch" in commit object Philip Oakley
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 List information: http://vger.kernel.org/majordomo-info.html * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to='CADL+T9Z=SrVyMMnYk3M7Dmb4c5xGiQtCTiDYaceKwB2-51TVfirstname.lastname@example.org' \ --email@example.com \ --cc=Matthieu.Moy@grenoble-inp.fr \ --firstname.lastname@example.org \ --subject='Re: Feature request: "author branch" in commit object' \ /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
Code repositories for project(s) associated with this inbox: https://80x24.org/mirrors/git.git 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 read-only IMAP folder(s) and NNTP newsgroup(s).