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

Reply via email to