views:

68

answers:

2

I have an SVN repository set up with the following directories:

/branches/
/tags/
/trunk/

I created /branches/my_feature/ using

svn cp trunk branches/my_feature

That's fine. I now want to keep my branch up-to-date with trunk, so I run (with cwd = branches/my_feature)

svn merge ../../trunk

and it pulls everything down, showing that everything is being re-added, rather than just the changes being added.

I just want the changes to trunk to be added. How can I do this?

+3  A: 

Try specifying revision numbers. If you branched at 100 and want to merge through 103, do this:

svn merge -r100:103 ../../trunk
Kevin Crowell
+1  A: 

Hmm, check the revision history of trunk, did something weird happen in the history, like the files being re-added in there, for example. If the history is broken on trunk it will cause problems when merging in.

Also, which version of svn are you using? Is it 1.5 or higher?

Jim T
This is a fresh copy of trunk, with one file changed. < 1.5.
Chad Johnson
As Kevin says, you'll need the revision range in there. You could also try specifying the repository addresses rather than merging from the working copy.
Jim T