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

Re: CVS and SVN: Tags and Branches.. A question of strategies

From: Andrew Close <aclose_at_gmail.com>
Date: 2007-03-07 17:01:50 CET

Peter,

sorry i didn't respond earlier, i've been away from a computer...

i'm definitely not an SVN guru :) so i you may want to look elsewhere
for the answers to your questions.

> In CVS there are tags and branches. Branches are similar to SVN branches
> tags are something that doesn't really exist in SVN. Tags are similar to
> labels and are a group of files @ particular versions. The tag describes
> each file at a point in time (not necessarily the same point in time as the
> others). A tag can be altered to include newer or older versions of files.

in SVN tags and branches are really the same thing, cheap copies of
whatever you tagged/branched from. i believe tags just give you
another way to label a point in time. i use tags for snapshots that
aren't supposed to be changed, but we're not enforcing that at the
moment. i believe anyone could go in and modify tagged code...
branches are working copies that we don't want integrated into the
mainline until they are stable. we do continue to make changes on
them until they are folded back into the trunk, at which point they'll
sit around for some period of time for historical reasons and then
we'll eventually purge them.

> With CVS (in our shop) everyone works on mainline and we have tags for
> builds. If we have a new build that must have two bugs fix in it. We
> duplicate the last build tag and then update the copy to include the files @
> the versions described in the bug. We then build from that tag.

you can continue this practice; it's my understanding that this is
what was intended under SVN as well. it's just implemented in a
slightly different manner.

> ****
> My question is what's the right way to do that in SVN since a flexible
> device that allows for the setting of individual versions of file doesn't
> realy exist (except to branch and merge).
>
> ****

as mentioned above, i believe you can continue on with your current
practice using tags as snapshots for releases. you just set procedure
to dictate that tags are not supposed to be touched once they're
created. all 'work' should be done on either the trunk or a branch.

i'm not sure i completely answered your question. hopefully that
helps though, or someone else is able to provide a more clear answer.

:)

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Wed Mar 7 17:02:20 2007

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.