[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: What branching patterns work with Subversion reintegrate merge?

From: Johan Corveleyn <jcorvel_at_gmail.com>
Date: Tue, 22 Mar 2016 10:07:25 +0100

On Mon, Mar 21, 2016 at 3:23 PM, Bob Berger <rsberger1_at_hotmail.com> wrote:
> Thanks for your reply Stefan. It's very much appreciated.
>
> Before Subversion 1.8 made the reintegrate merge automatic, I was doing merges without the reintegrate option, which were, I suppose, inappropriate "complete merges". They were
> generally effective, but sometimes produced errors and strange conflicts. With Subversion 1.8 or higher, I am forced to cherry-pick, which may sometimes produce poor results if I pick the
> wrong cherries. I had regarded cherry-picking as error-prone and something to be avoided, but it's good to know that it's used successfully elsewhere.

We use cherry-picking in our organisation too, for backporting
specific fixes from trunk to release branches. I believe that's the
most natural way to work with release branches.

I don't regard it as error-prone at all, but you have to organise a
bit of process around it. For each release (branch) we have:

- A wiki page, where developers list fixes to be backported (i.e. to
be merged to the release branch): revision number, log message, link
to a review, and commentary why it needs to be backported.

- A build master (which is a rotating job, everyone takes turns doing
it): does the merging and building on a dedicated build machine.

- A little script which is fed (by the build master) with the revision
numbers to be cherry-picked. It first shows the commit messages and
affected files (simply 'svn log -v -rX') so the user can verify, and
after confirmation performs the cherry-pick merge; and after another
confirmation commit to the release branch.

-- 
Johan
Received on 2016-03-22 10:08:13 CET

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.