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

Re: simulate labels using tortoiseSVN

From: Jaco Vosloo <jvosloo_at_wesbank.co.za>
Date: Sat, 12 Apr 2008 02:14:35 +0200

Simon Large wrote:
> On 11/04/2008, Vosloo, Jaco <JVosloo_at_wesbank.co.za> wrote:
>> Create your project structure as follows:
>> +svnroot
>> ++ projectname
>> +++ trunk
>> +++ branches
>> +++ tags
>> ++++ testing
>> ++++ production
> ...
> If you need a stable branch for testing, by convention you would put
> that on a branch, and rather than delete and create a new branch every
> time trunk changes you merge changes from trunk to branch.
> ...
> Normally a tag is a snapshot of (say) trunk at some particular point,
> usually a release, and it is named according to the release identity.
> The tags directory contains multiple snapshots so that you can easily
> see which one refers to a particular released version...

Thank you for the reply Simon.

I have updated my how-to to reflect your recommended structure:
+svnroot
++ projectname
+++ trunk
+++ branches
++++ testing
+++ tags
++++ release-1.00
++++ release-1.01
++++ release-1.10

I am using the branch/merge functionality as described in the
documentation as well but I feel it is very rigid and complicated for a
small project (read agile / lots of releases with few developers).

I would prefer not to have to create a new release version for every
build that goes out to the production environment as I may have more
than 5 builds going out per day (with 2 developers). I need a quick
mechanism to set a specific revision number as the "blessed" revision
and have the test/production server updated with this as easily as
possible or even automatically. ;)

It must be a one way copy which would overwrite everything in the target
folder. I know "SVN Update" do not delete unversioned files and this may
cause a problem in the future... I want to use a "label" as a movable
pointer to a non fixed point in time. In the table below the X indicates
the revision number which is being referenced by a specific label, this
reference may be changed over time as can be seen in the second table. A
label has a one-to-one relationship to a revision.

Table 1 : Point in time 1
Revision # | 304 | 305 | 306 | 307 |
Testing | | | | X |
Latest | | | X | |
R-1.00 | X | | | |
R-1.01 | | | X | |

Table 2 : Point in time 2
Revision # | 304 | 305 | 306 | 307 | 308 |
Testing | | | | | X |
Latest | | | | X | |
R-1.00 | X | | | | |
R-1.01 | | | | X | |

Please note that many people have asked for "moving labels" over the
past few years.
There is an "SVN-Label" wrapper at:
http://svnlabel.remynet.org/
Alastair's Command line Finder labels at :
http://alastairs-place.net/2007/07/cmdline-finder-labels/

Other products make heavy use of labels for example
Serena Dimensions - called statuses from personal experience.
Microsoft TFS :
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=963157&SiteID=1
IBM ClearCase :
http://www.ipnom.com/ClearCase-Commands/mklabel.html

I do not wish to push for feature bloat on SVN or TSVN which is why I'm
trying to make do with the existing functionality even though it is not
very intuitive.

The ideal solution would be that I could set a label on a revision and
do an "svn update to specific label" and my working copy would be
updated to the revision as pointed to by the label.

Regards
Jaco Vosloo

To read WesBank's Disclaimer for this email click on the following address or copy into your Internet browser:
http://www.wesbank.co.za/emaildisclaimer.asp

If you are unable to access the Disclaimer, send a blank e-mail to
emaildisclaimer_at_wesbank.co.za and we will send you a copy of the Disclaimer.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_tortoisesvn.tigris.org
For additional commands, e-mail: users-help_at_tortoisesvn.tigris.org
Received on 2008-04-12 02:14:52 CEST

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

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