|Confusing merge behavior [message #558014]
||Thu, 09 September 2010 19:39
| David M. Karr
Registered: July 2009
I'm using the latest Subversive, with an older connector, as I connect to SVN 1.4 on the server. This works well enough.|
I rarely have to deal with merge scenarios, and every time I do I get very confused. I often give up and just manually copy the files I know have to be copied and check them in.
This morning I had to do a merge and I decided to try to muddle through it. I had to merge from one branch that I've made changes in to a "release" branch that was recently merged from the trunk. I only had to merge three files.
When I first attempted the merge, I selected HEAD for the "start revision" because that's what the picture in the Subversive documentation shows (http:// www.eclipse.org/subversive/documentation/teamSupport/merge_d ialog.php). I clicked "Browse" for the stop revision and simply selected the oldest revision in the list. This was before the two revisions that I made my changes in.
When I clicked OK, it chugged for a bit and then said that there were NO changes to merge. I verified that no files were checked out.
I then tried the merge again, reversing the order, having HEAD as the "Stop" revision, and then browsing for the same revision in the "Start" revision section. When I executed this, it did appear to do a merge, as it showed changes in the three files that I had changes in.
So doing the merge correctly requires understanding the correct order to specify the revisions. Doing it in the wrong order simply won't do anything useful. The Subversive documentation page I cited has a picture that clearly implies having HEAD in the "Start" revision and a lower revision in the "Stop" revision. What's even more confusing is that the text after that picture says the following:
Start revision Specifies the minimum merge range revision number.
Stop revision Specifies the maximum merge range revision number.
This information seems more reasonable, and it conflicts with the picture.
Despite the documentation problem, I still have a problem with the result of the merge. Although the merge showed changes in those three files, the actual merge results said that there were conflicts in the three files. The revision number shown for each of the files was for changes made well before the changes I made. When I went into the compare view for each one, I looked at all the changes in the file, and all of the changes reflected the changes I made in the other branch. There were no conflict markers, nor was there any indication of any actual conflict.
Despite the claims of conflicts, I just did "Mark as Merged" for all three, because the merge appeared to be fine.
Could these confusing results be attributed to the fact that we're using an ancient version of SVN on the server (1.4), before merge history was implemented?
Powered by FUDForum
. Page generated in 0.01480 seconds