Subject: Re: bug#20717: attribution of gitmerge.el merged entries in generated ChangeLog

From: Eli Zaretskii <[email-masked]>
Date: Sat, 06 Jun 2015 09:55:45 +0300

> From: Glenn Morris <[email-masked]>
> Date: Fri, 05 Jun 2015 18:06:49 -0400
> 
> Glenn Morris wrote:
> 
> > After using M-x gitmerge (which seems v nice, BTW), 'make ChangeLog'
> > creates a file with contents:
> >
> > 2015-06-01  Glenn Morris  <rgm@...>
> >
> >    Merge from origin/emacs-24
> >    8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
> >
> > The merged entries should be listed under the name of the original
> > author(s), not the name of the person who did the merge.
> 
> Oh, I see we actually get both. The above entry on the date of the
> merge, and another entry (with the correct attribution) on the date the
> change was originally made (which of course has zero relation to the
> merge date) in the original branch. And changes that were skipped from
> the merge are still included. What a confusing mess.

I'm guessing that you are using "git log" to show this.  That command
could produce confusing results if you don't pay attention to branches
and ancestry of each commit, because it shows a non-linear history in
a linear fashion.  That's unlike what "bzr log" did, where it would
show only mainline commits by default, and if invoked with -n0, would
show the commits on branches indented.

I suggest to use "git log --graph" instead, where you should see that
one of these commits was on a branch, and the one that's attributed to
you is the merge-commit.

For commits on "mainline", you can use "git log --first-parent" to
show only mainline commits, but this will not help you in the case in
point.