views:

67

answers:

2

I recently did a merge in Subversion while most of my conflicts are of the type...

MyFile.java
MyFile.java.working
MyFile.java.merge-left.rXXXXX
MyFile.java.merge-right.rYYYYY

I can easily resolve conflicts. However a few of my conflicts are of the type...

MyFile.java
MyFile.java.working
MyFile.java.merge-left.rXXXXX
MyFile.java.merge-left.rYYYYY
MyFile.java.merge-right.rYYYYY
MyFile.java.merge-right.rZZZZZ
MyFile.java.2.working

The resolve tool seems to choke on this and even when i manually make the changes and choose resolve. It still leaves behind an extra working copy, and I can't Edit anymore conflicts. I'm relatively new to Subversion, but was asked to help in a larger migration. Any advice?

+1  A: 

I've seen these in subversion proper if you do a merge, forget to resolve a conflict and do a second merge (all without a commit). Its possible that Tortoise is doing multiple merges internally when you do large revision-range merges (I'm not sure, while I use it at home, I've not run across this except with command-line svn).

macabail
+2  A: 

TortoiseSVN has a checkbox for non-interactive merge when merging. Something like "Merge non-interactive" - I am guessing you have this checked and are attempting to resolve all conflicts at the end. When performing a large merge, multiple conflicts in the same file is not uncommon, and in non-interactive mode you will get the behavior you described if there are multiple conflicting revisions involving the same file.

You can avoid this by resolving each conflict interactively, as the merge progresses and tortoise presents you with each conflict dialog. From experience, I am aware this is tedious - but it should at least make resolving the conflicts simpler.

Joshua McKinnon