On Wed, May 23, 2018 at 01:32:46PM -0400, Jeff King wrote:

> On Wed, May 23, 2018 at 07:10:58PM +0200, SZEDER Gábor wrote:
> 
> >   $ git log --oneline master..ba95710a3b -- ci/
> >   ea44c0a594 Merge branch 'bw/protocol-v2' into jt/partial-clone-proto-v2
> > 
> > But as far as I can tell, there are no changes in the 'ci/' directory
> > on any of the merge's parents:
> > 
> >   $ git log --oneline master..ea44c0a594^1 -- ci/
> >   # Nothing.
> >   $ git log --oneline master..ea44c0a594^2 -- ci/
> >   # Nothing!
> 
> Hmm. That commit does touch "ci/" with respect to one of its parents.
> It should get simplified away because it completely matches the other
> parent, so it does sound like a bug.
> 
> > This is not specific to the 'ci/' directory, it seems that any
> > untouched directory does the trick:
> > 
> >   $ git log --oneline master..ea44c0a594 -- contrib/coccinelle/ t/lib-httpd/
> >   ea44c0a594 Merge branch 'bw/protocol-v2' into jt/partial-clone-proto-v2
> 
> Both of those directories also differ between one parent. If you try it
> with "contrib/remote-helpers", which does not, then the commit does not
> appear.
> 
> So it does seem like a bug where we should be simplifying away the merge
> but are not (or I'm missing the corner case, too ;) ).
> 
> > I get the same behavior with Git built from current master and from
> > past releases as well (tried it as far back as v2.0.0).
> 
> I keep some older builds around, and it does not reproduce with v1.6.6.3
> (that's my usual goto for "old"). Bisecting turns up d0af663e42
> (revision.c: Make --full-history consider more merges, 2013-05-16).  It
> looks like an unintended change (the commit message claims that the
> non-full-history case shouldn't be affected).

There's more discussion in the thread at:

  
https://public-inbox.org/git/1366658602-12254-1-git-send-email-ke...@bracey.fi/

I haven't absorbed it all yet, but I'm adding Junio to the cc.

-Peff

Reply via email to