[[!comment format=mdwn username="http://joeyh.name/" ip="209.250.56.246" subject="comment 2" date="2013-11-15T17:39:37Z" content=""" My initial guess was wrong.. This is not actually a bug in conflicted merge resolution at all. The bug is that in direct mode, it diffs the old and new tree when doing a normal merge, so see what files in the work tree need to be changed. This was written to go through the diff and replay the deletes and adds. In this case, since f/f and f are different items, they can appear in either order in the diff But the code only worked when f was first deleted, and f/f was then added. And it turns out that in this case, the diff had the two items the other way around. So, I think it needs to do 2 passes, first deleting and then adding. """]]