Elijah Newren <newren@xxxxxxxxx> writes: > - Add a flag to turn off directory rename detection, and set the > flag for every call from am.c in order to avoid problems like this. I'd say this is the only practical solution, before you deprecate the "pipe format-patch output to am -3" style of "git rebase" (and optionally replace with something else). The whole point of "am -3" is to do _better_ than just "patch" with minimum amount of information available on the pre- and post- image blobs, without knowing the remainder of the tree that the patch did not touch. It is not surprising that the heuristics that look at the unchanging part of the tree to infer renames that may or may not exist guesses incorrectly, either with false positive or negative. In the context of "rebase", we always have all the trees that are involved. We should be able to do better than "am -3".