On 12/04/2008, Jaco Vosloo <jvosloo_at_wesbank.co.za> wrote:
> 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:
> ++ 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:
> Alastair's Command line Finder labels at :
> Other products make heavy use of labels for example
> Serena Dimensions - called statuses from personal experience.
> Microsoft TFS :
> IBM ClearCase :
> 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
> 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.
Labels is an often requested feature, but it has to go into Subversion
before TSVN can use it, so you are petitioning the wrong list.
As a workaround have you considered using svn:externals? You could
define a folder called testing which has no content but just has an
svn:externals property set which calls up a particular revision of
trunk. Look in the help file for how to use externals.
When you change the svn:externals property to specify a different
revision, a user who has checked out the testing folder will then get
the new content on update.
As for unversioned files, there is no way to get rid of those through
any subversion action.
oo // \\ "De Chelonian Mobile"
(_,\/ \_/ \ TortoiseSVN
\ \_/_\_/> The coolest Interface to (Sub)Version Control
/_/ \_\ http://tortoisesvn.net
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 23:17:05 CEST