views:

150

answers:

2

I have to deal with Subversion 1.4 merges at the moment and have found this answer to a question, which exactly describes my problem. The actual question deals with git-style rebase and merge problems with SVN which produce tree conflicts. It includes the following recommendation:

[...] instead of range-merging the branch to a working copy that points to the trunk, you want to merge "FROM trunk@HEAD TO branch@HEAD" with the working copy pointing to trunk. In essence:

"Give me all the changes I'd need to make trunk identical to branch".

Now I wonder how to actually do that merge with SVN, since svn merge only merges to the working directory. Is there a typo in the original answer or am I missing something?

A: 

I'm not sure, but it seems to me you would need to merge the difference between branch head and trunk head into trunk, so that would be "FROM branch@HEAD TO trunk@HEAD", not the other way around.

There is a merge syntax where you merge the difference between two tags into your working copy. This would be the one to use. (Sorry for being so vague, but I had't done much SVN before 1.5.)

sbi
+1  A: 
  1. After svn merge you need to svn ci, and the merge is committed to the branch
  2. With Subversion 1.4, the best way to handle merging is with svnmerge.py
orip
1. Yes, but without merge tracking you'd get tree conflicts when merging back to trunk (reintegration)2. Thanks, a nice one!
rassie