svntortoisesvnmergevendor-branch

Help me understand Svn merge


I don't understand svn merge. Here's the scenario:

We have a branch that contains the latest stable copy of our code. I will refer to this branch as 'the branch'. There's also a trunk branch which contains a few new additions, but we don't want to mess with that at this point.

We have a vendor branch which contains an updated version of the library on which our app runs. I want to merge the new changes in this vendor branch with 'the branch' so that we get updates to the library without me having to go through, file by file, and figure out what is new. No Thanks.

Now, I realize this is probably simple, but I have tried a lot of stuff, and read a lot of tutorials, but I am still unable to wrap my head around what, exactly, I should be merging with what.

For the record, I am using Tortoise.

EDIT: This is a clarification, but our app runs the library at the root level. I don't know if it matters. So 'the branch' is basically the same as 'vendor', but with our changes.


Solution

  • Something like this should do it for you. Subversion understands standard diff and diff3 pretty well, but it doesn't always play nice with 3rd party (graphical) diff utilities.

    $ cd "the branch"
    $ svn merge --diff3-cmd=diff3 svn+ssh://yourrepository/path/to/vendor_branch"