Simplified one is not _smarter_. It is merely _faster_, exactly because
it only looks at the paths between A^..A and nothing else.
And that is why it cannot tell between the case where both A^ and A have
Makefile2 or they both lack it. And that is exactly why application of
this change on top of B is mistaken as a patch to a renamed path. From
B's point of view:
- Incoming change says "I changed Makefile from this shape to that
shape", and nothing else;
- B does not have Makefile, but it happens to have the contents at path
Makefile2 that is identical to the preimage of that incoming change.
which makes it guess (when falling back to 3-way merge) that somewhere
leading to B what used to be at Makefile (which is what the incoming
change claims to change) may have been renamed to Makefile2 (because B
does not have Makefile but does have it).
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html