Reputation: 457
I have an SVN repository where I created a branch. A coworker made a change on the trunk that conflicts with the changes I made on my branch. Unfortunately, SVN does a bad job with the merge conflict (it marks differences in places where they shouldn't be). I know the conflicts arise from revision #100 and that the previous trunk revision is #99. I would like to merge revision #99 on the trunk into my branch (including all the changes to the trunk since the last time I did such a merge). Then I want to more carefully work on the merge from revision #100 to my trunk.
Normally I would go to my local copy of the branch, then merge with the command
svn merge ^/reponame/trunk/directory .
But that merges the latest revision of the trunk (which would be #100). What would be the command to instead merge revision #99 from the trunk into my branch?
Upvotes: 4
Views: 2838
Reputation: 457
A combination of Google and trying things that didn't work resulted in the following method:
In my local checkout of the branch:
svn mergeinfo --show-revs eligible ^/reponame/trunk/directory .
which gave me the list of revisions on the trunk that hadn't yet been merged into my branch.
For each of those revision numbers:
svn merge -c #### ^/reponame/trunk/directory .
which lets me (one revision at a time) merge changes from the trunk into my branch.
I'm reasonably confident that there are better ways, but this was functional.
Upvotes: 2