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

Re: Re: Using Tag methodology

From: David Weintraub <qazwart_at_gmail.com>
Date: Mon, 17 Nov 2008 16:06:25 -0500

I actually find that I don't need floating labels in Subversion as we
did in other revision control systems.

In most revision control systems, tags are on individual files, and it
is difficult to find the tags and then figure out which one you're
interested in. Thus, many sites needs labels to say that this is the
QA release, or this is a candidate release.

However, in Subversion, tags are done on a directory tree basis and
not on a file-by-file basis. Not only that, but its very easy to see
what tags are out there because tags are external directory structures
and not internal to each individual repository file.

Remember too that the tags directory structure isn't set into stone.
For example, we have three sub-directories in our tags directory: DEV,
QA, and REL. All QA releases tags are stored in the QA folder, so it's
easy to see what releases have been approved for QA. We simply copy
the tag approved for QA from the DEV folder to the QA folder.

For example, imagine our directory structure looks like this:

.../tags/DEV/FOO-1.4-D-001
.../tags/DEV/FOO-1.4-D-002
.../tags/DEV/FOO-1.4-D-003
.../tags/QA/FOO-1.4-Q-001
.../tags/QA/FOO-1.4-Q-002
.../tags/REL/FOO-1.4.1
.../tags/REL/FOO-1.4.2

It's easy to see that the last QA release is FOO-1.4-Q-002, and you
can get that with a simple "svn ls" command. Need to know what release
FOO-1.4-Q-002 is based upon? Just run the following command:

    $ svn log --stop-on-copy -v http://[...]/tags/QA/FOO-1.4-Q-002
    ------------------------------------------------------------------------------------------------------------
    r20961 | svnant | 2008-11-10 09:38:11 -0500 (Mon, 10 Nov 2008) | 1 line
    Changed paths:

    A /[...]/tags/QA/FOO-1.4-Q-002 (from /.../tags/DEV/FOO-1.4-D-003:20960)

Now, it's easy to see that FOO-1.4-Q-002 was based upon FOO-1.4-D-003
and that this tag was created on Nov, 11, 2008. There is even a
comment (not shown) which could include even more information.

One of the hard things to do when you use new software is to get out
of old habits that you use to do because there was no better way of
handling the situation. There really isn't any need for floating
labels since it is so easy to get what you want and it has a lot more
meaning too.

In most revision control software a label "APPROVED_QA" would not tell
you what was the previous revision that was approved for QA or what
the difference is between this QA revision and the last, or when this
revision was approved for QA. By using Subversion and getting rid of
floating labels, you no longer have this problem.

--
David Weintraub
qazwart_at_gmail.com
On Mon, Nov 17, 2008 at 2:40 PM, Bob Archer <Bob.Archer_at_amsi.com> wrote:
> No.. I don't think that's what he wants. He doesn't want to "move" the
> tag folder itself but have the same tag contain different revisions of a
> file. Sort of like "float" label. The only way to do this is..
>
> 1. Delete the tag and do a new copy using the same tag name.
> 2. Commit changes directly to the tag folder. Basically goes against the
> tag convention but is doable.
>
> Bob
>
>
> -----Original Message-----
> From: Trevor Harmon [mailto:trevor_at_vocaro.com]
> Sent: Monday, November 17, 2008 11:46 AM
> To: Ryan Schmidt
> Cc: Ilan Yaniv; Subversion Users
> Subject: Re: Using Tag methodology
>
> On Nov 17, 2008, at 5:40 AM, Ryan Schmidt wrote:
>
>>> 2) I also need a label which is moveable, like "ready for QA" etc.
>>
>> Since tags are just copies, to recreate a tag, you would first
>> delete the old tag, then create the new tag. You can do this with a
>> normal Subversion client, and it will result in two revisions (one
>> to delete and one to create)
>
> Couldn't he just do a "move" on the tag? I thought tags are like any
> other directory in Subversion, which means they can be moved around.
>
> Trevor
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
> For additional commands, e-mail: users-help_at_subversion.tigris.org
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
> For additional commands, e-mail: users-help_at_subversion.tigris.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
Received on 2008-11-17 22:06:45 CET

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.