[Solar-talk] Dev branch going away

Travis Swicegood development at domain51.com
Tue Sep 26 10:33:16 PDT 2006


Howdy all,

Paul M Jones wrote:
> We tried a "development" branch for this release cycle, but it turned  
> out to be more work than it was worth (for your beloved Benevolent  
> Dictator, anyway ;-).  So all new development is happening in "trunk"  
> from now on.
>
> I'm going to leave "branches/dev" in place for another day or two,  
> then will remove it from SVN ... so this is your chance to point your  
> SVN checkouts back to "trunk".
>   

Here's my experience.  Development should always happen in the trunk.  
Branches should be used for two things:

* Doing something crazy that's going to break a lot of code so you want 
to get it completely done before committing it.  If you're using unit 
tests, it pretty easy to make these changes without breaking 
everything.  If you're doing that, you're in trouble.

* Handling release branches.  This only applies when you're doing a 
milestone release that you're going to be supporting for awhile and will 
have to apply bug patches.

The first kind shouldn't live in the repo more than a week or so.  I 
generally mark those as "tswicegood-ChangingModel" or something like 
that.  Makes it easy to figure out what's going on.  The second I do as 
RB_1.0.  Once a release branch is created, no new code goes in to it.  
Then you always tag off of the RB instead of the trunk, but again, 
that's for stable releases that you plan on keeping around and 
supporting for awhile.

That seems to work the best.  People who want bleeding edge and do 
trunk, people who want stability and either go with an RB_ branch if 
they want automatic bug fixes or use a tag directory and just switch 
when they're ready to upgrade.

-T


More information about the solar-talk mailing list