Nairn Baliber <planetkil...@gmail.com> writes: > This creates a conflict (upon running that command, not on commit), whereby > the merge-left file contains everything up until line r4, and the > merge-right file contains everything up until line r3. In other words, > instead of removing a past change, the command seems to want to revert the > entire file back to either revision 3 or 4, removing changes in subsequent > revisions (5 and 6, in this case).
The left and right files are simply the r3 and r4 files and the difference is a line added at the end of the file. The merge attempts to remove the line from the current file where the line is no longer at the end. Subversion's merge algorithm detects that the context following the line in the current file has no match in the original file and flags a conflict. A more permissive algoithm would ignore the conflict and allow the merge. That's a better result in some cases but it may well be a worse result in other cases. You can configure Subversion to use an external diff3/merge tool. kdiff3 has a more permissive algorithm that allows the merge without a conflict. -- Philip