Subject: Re: identical hashes on two branches, but holes in git log

From: John Keeping <[email-masked]>
Date: Wed, 20 May 2015 14:25:34 +0100

On Wed, May 20, 2015 at 03:13:59PM +0200, Philippe De Muyter wrote:
> My initial problem (still unresolved/unanswered) is that some commits
> that appeared between v3.14-rc1 and v3.14-rc2 (specifically
> 817c27a128e18aed840adc295f988e1656fed7d1) are present in v3.15, but not
> in my branch.
> 
> I have just checked online the v3.14 version on 
> 
> http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/log/arch/arm/boot/dts/imx6qdl.dtsi 
> 
> and I see also the same "problem": the commit removing 738 lines is in the log
> 817c27a128e18aed840adc295f988e1656fed7d1
> "ARM: dts: imx6qdl: make pinctrl nodes board specific",
> but the v3.14 version of the file still contains the 738 removed line,
> and I see no commit restoring those lines.
> 
> I do not understand why those 738 lines are still present in v3.14 although
> they were removed between v3.14-rc1 and v3.14-rc2 :(

Commit 817c27a128e18aed840adc295f988e1656fed7d1 isn't in v3.14:

$ git describe --contains 817c27a128e18aed840adc295f988e1656fed7d1
v3.15-rc1~77^2~40^2~57

$ git tag --contains 817c27a128e18aed840adc295f988e1656fed7d1
v3.15
v3.15-rc1
v3.15-rc2
v3.15-rc3
v3.15-rc4
v3.15-rc5
v3.15-rc6
v3.15-rc7
v3.15-rc8
v3.15.1
v3.15.10
v3.15.2
[snip later tags]

However, the commit date of 817c27a128e18aed840adc295f988e1656fed7d1 is
between the dates of v3.14-rc1 and v3.14-rc2 so the default commit
ordering of `git log` will show it between those two tags.
`--topo-order` may help but I suspect the history is too complex to
infer the relationship between commits without `--graph`.