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

Re: Integration Builds and Tags

From: Brad Appleton <brad_at_bradapp.net>
Date: 2005-01-13 17:01:49 CET

Hi Ben & Steve!

On Thu, Jan 13, 2005 at 09:44:51AM -0600, Ben Collins-Sussman wrote:
> Stephen McConnell wrote:
> > How do I do this in Subversion.... or can I do this?
> > I have to be able to keep track of Three types of builds
> >
> > Development
> > Test
> > Production
> Honestly, if the tag keeps changing all the time, then it's not really
> much of a tag, is it? It's more of a branch.
> It sounds like Stephen should be using 3 branches and porting changes
> between them. Then when he needs to make a 1-time snapshot (i.e. to
> remember something that got delivered to a customer), he can copy the
> production branch to a tag.

I was thinking the same thing.

Basically this is a case of trying to implement a
particular promotion lifecycle model. CVS' tagging
mechanism lent itself to an attribute-based promotion
mechanism using tags to indicate promotion-status of a
version. That's because CVS tags could be used as 'boolean'
attributes as well as like version-labels. Subversion
copies are different.

So with SVN, Steve could do what he wanted using properties
if he liked with a property name of something like "Status"
or Build-Status (or the more boring "Promotion-Level") and
property-values of {Development, Test, Production}. The
downside here is that it might be a bit more effort
to determine what is the LATEST build with a given
promotion-status (would have to query the branch for the
latest revno with a given promotion status).

Or he could use promotion branches with a branch for each
promotion-level. using promotion branches is a bit easier
to set-up. The downside is that you have to do copymerging
to propagate promoted builds between promotion branches.

For more info on several different mechanisms for
implementing promotion models and their various tradeoffs,
take a look at the following paper:
  "Agile Build Promotion: Navigating the Ocean of Promotion Notions"

Hope that helps!

Brad Appleton <brad@bradapp.net> www.bradapp.net
  Software CM Patterns (www.scmpatterns.com)
   Effective Teamwork, Practical Integration
"And miles to go before I sleep." -- Robert Frost
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Thu Jan 13 17:04:29 2005

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