Merging with subversion 1.5

Some weeks ago Openbravo subversion repository was upgraded to version 1.5.

The greatest feature this new version has is the merge tracking. From now on it is not necessary to manually have into account the revisions that have already been merged between branches.

Now merging is as easy as:

myWCbranch$ svn merge https://dev.openbravo.com/svn/openbravo/trunk

This command will merge all the not already merged changes in trunk to my branch working copy. And now the best part: when I’ve finished with by branch, to merge it back to the trunk this command will do all the work:

myWCtrunk$ svn merge --reintegrate https://dev.openbravo.com/svn/openbravo/myBranch

I hope this will save us a lot of headhaches…

There is a new feature personally I don’t like is the the interactive conflict resolution, specially when merging big projects it is annoying to have to manually decide about each conflict while the process has not been finished yet. It is possible to deactivate it editing the .subversion/config file to add in the [miscellany] section the following line:

interactive-conflicts = no

There is some documentation about branches and merges in the Openbravo wiki.

Advertisements

One thought on “Merging with subversion 1.5

  1. katratxo says:

    If you see the step 3 on the “Subversion 1.5 merge-tracking in a nutshell” [1] you’ll see that you need to periodically merge the changes from the trunk to the branch. If not, when you made the *reintegration* you’ll loose all the changes made in the trunk after the branch creation.

    [1] http://blog.red-bean.com/sussman/?p=92

    Cheers,

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s