Hello there, I have raised my initial issue on Stack Overflow: https://stackoverflow.com/questions/60927159/merging-repo-with-git-subtree-prefix-break-the-history After reading the code, it's definitely a bug with git log. The actual issue is that if a file has been renamed inside a commit with 2+ parents `git log --follow` won't show it and loose track of the file. On the other side, running `git log -m --follow ...` is working as expected. I would be really keen to submit a patch in the next couple of days. I am planning to tweak the method `log_tree_diff` in log_tree.c as I feel that's where the error coming from. I am guess I will have to force somehow the evaluation of the diff (even if the diff isn't displayed) so the method `try_to_follow_renames` gets a chance to be evaluated. I have never contributed to git source code, I'll the doc "SubmittingPatches" but feel free to give any guidance. Thanks Tibo