I've used subversion for a while, and used the svnmerge.py script for a while in my old job to manage merges between branches. I believe Subversion 1.5 is now out, and was supposed to have some branch / merge management system integrated with it.
So, can someone give me a quick overview of how to track merges in a branch with Subversion 1.5? Are there any pitfalls with using this support? Do I need to ensure all the team upgrades to 1.5 before using this support?
Have a local checkout of the branch to which you want to merge a range of revisions from a source branch. By default, "Merge a range of revisions" is clicked. Click Test Merge to check if it merges desired revisions/files.
If you want to merge changes into a branch, you have to have a working copy for that branch checked out, and invoke the merge wizard from that working copy using TortoiseSVN → Merge.... In general it is a good idea to perform a merge into an unmodified working copy.
Merge tracking is managed by the client and stored in a property (svn:mergeinfo).
To use merge tracking you just merge as usual but without the revision range:
svn merge trunkURL
The client will take care of reading the properties to see what revision(s) need to be merged in and then update the properties with the newly-merged revision(s).
Here is a pretty basic overview of the process.
I personally haven't run into any problems with merge tracking, but my usage of the feature has been pretty light.
There are two upgrades you'll need to do to get merge tracking:
Just upgrade everyone.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With