Merging from a bug branch to multiple release branches
From: TK Banks <spammymatt94_at_yahoo.com>
Date: Wed, 17 Sep 2008 06:10:33 -0700 (PDT)
I'm an old Clearcase user. I've never used subversion, but am reading up on subversion 1.5 at svnbook.red-bean.com. If I'm understanding the "reintegrate" merge function correctly (described in Chapter 4 of that book), then I'm thinking subversion is inadequate to automate a common software development use case.
Say I'm a developer working on a software system that is version controlled by subversion. The mainline of development is carried out on the trunk; and from the trunk release branches are periodically created: R1.0, R1.1, etc.
Once a release branch is created it goes through a number of weeks of testing before it's actually released. One day, someone from our test team finds a bug in my software in R1.7 and asks me to fix it.
So I create a bug branch named BUG302 off of branch R1.7 for purposes of isolating, testing and tracking the changes necessary to fix this bug.
Once I've finished testing my bug fix I need to merge my changes from branch BUG302 back to R1.7. This seems like a straightforward use of the merge --reintegrate capability of subversion. But I also need to merge these same deltas back to the trunk. How can I do this? In particular this statement:
leaves me thinking this may not be possible at all. (Actually this is not completely clear to me as "further work" may only mean I can't make further modifications on this branch -- perhaps it is possible to perform additional merges from this branch to other places.)
There is a brief section in the book describing the use of release branches. There it makes the statment:
"fixes are ported back and
but it doesn't really give me a clue of how subversion can help in this process.
Most recently I used CVS for software version control and this task was manual (and highly error prone). I was hoping subversion would offer some mechanism for applying a set of changes to two (or more) branches.
What's steps should I be following to complete this very common use case?
This is an archived mail posted to the Subversion Users mailing list.