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

Re: Using tags with SVN

From: Les Mikesell <lesmikesell_at_gmail.com>
Date: Thu, 14 Apr 2011 12:19:43 -0500

On 4/1/2011 7:52 AM, Stirnweiss, Siegmund SZ/HZA-ZIT3 wrote:
>
>> Sometimes you can adjust a tag if you've tagged the wrong
>> file, but that should be fairly rare. In Subversion, tags take less
>> than a second to do while in CVS, you have to tag each and every file.
>> Long files have to be rewritten after every tag. That, to me is a
>> great advantage in Subversion.
>
> Having to tag each and every file in cvs for us is a feature. It helps
> us achieving our goal in a very convenient way.

In cvs, you _have_ to tag files to get any sort of grouping. It is the
only way to tie a set of files at specific revisions together. Svn
works naturally with directories, so normally you want to replace the
concept of using tags on files to hold a group together with organizing
the layout under directories (which probably already exist...) and using
the repository global revision number for a particular state.

>>> We use tags in CVS to identify the files which have passed module
> tests and
>>> should make it into our integration test environment. When they have
> passed
>>> the integration tests we use a different tag to identify the files,
> which
>>> make up the software in/for our production environment. In addition
> to that
>>> our development model is not release driven. As a result we do not
> tag the
>>> HEAD of our complete source tree at a particular point in time.
>
>> Whoa! That's dangerous. When you pick and choose tags, you may end up
>> tagging the wrong file. Then, this is a CM error and not a developer
>> error. That means the Finger o' Blame points to you and not to the
>> developer who gave you the wrong file or forgot a file. You want that
>> Finger o' Blame pointing not at you.
>
> That's not the problem here. The developers themselves tag files and we
> have not yet had a problem with this approach.

In svn, you might want to use a more directory-oriented approach. It
would be more typical to copy the top level project to a QA/release
branch and keep making changes there until all the files pass QA,
perhaps making tag copies as you go, but you could copy file-by-file
into the branch if you don't want them to appear all at once.

>> Now, there's nothing in Subversion preventing you from attaching a tag
>> to a particular version of a file. You simply copy files to the tag
>> directory one at a time. When a file gets approved, you "tag" it. It's
>> not the standard way to do it, but I've seen shops that do.
>
> What exactly do you mean with copy? Do you mean a "svn copy"? Or do you
> mean a file system copy?

Always "svn copy" - but it can be in some developer's working copy that
is subsequently committed or a url->url repository operation.

-- 
   Les Mikesell
     lesmikesell_at_gmail.com
Received on 2011-04-14 19:20:18 CEST

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.