[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Bug? External merge program corrupts working copy?

From: Greg Kopp <greg_at_gregkopp.com>
Date: 2006-01-27 23:09:57 CET

I have to use an external merge program (WinMerge, specifically
WinMergeU.exe) because I am using Subversion with a Chinese language
project. All of our files are saved in UTF-8 with signature (Codepage
65001) - TortoiseMerge looks at these files as binary and can't properly
merge them.

However, I seem to be experiencing a problem when merging a conflicted
file using the external program and resolving the conflict.

For example, if I am merging a file from two different branches and the
merge conflicts, TSVN creates 3 new files: a merge-right.rXX, a
merge-left.rYY and a .working copy of the conflicted file. When I right
click and choose edit conflicts, WinMerge launches, puts the left file
in the left pane, the right file in the right pane. Once I finish
merging the differences and save it, the right pane changes to the
.working copy of the file (as it should - I assume).

If I examine the .working copy of the file, it looks like it should. All
of the changes are properly merged. So now, I right click on the
original conflicted file and choose Resolved. The three merge files
disappear. But when I examine the original file, I see a bunch of stuff
I do not believe should be in there.

Here is the contents of the left file:

This is line 1 in the trunk
This is line 2 in the trunk
This is line 3 of the trunk

Here is the contents of the right file:

This is line 1 in the trunk
This is an added line from the branch.
This is line 3 of the trunk

Here is the contents of the working file:

This is line 1 in the trunk
This is a new line from the trunk.
This is line 3 of the trunk

I manually merge the files, so the right pane in WinMerge looks like
this. The working copy changes to this as well:

This is line 1 in the trunk
This is line 2 in the trunk
This is an added line from the branch.
This is line 3 of the trunk

Once I right click on the original file, this is what it turns into:

This is line 1 in the trunk
<<<<<<< .working
This is a new line from the trunk.
=======
This is an added line from the branch.
>>>>>>> .merge-right.r8
This is line 3 of the trunk

Is this operating correctly? I would have assumed that the original file
would take the form of the working copy. Am I doing something wrong? Am
I making some assumtions I shouldn't?

Please respond directly to me as I am not a current subscriber to the list.

Greg

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tortoisesvn.tigris.org
For additional commands, e-mail: dev-help@tortoisesvn.tigris.org
Received on Fri Jan 27 23:26:17 2006

This is an archived mail posted to the TortoiseSVN Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.