[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: Stirnweiss, Siegmund SZ/HZA-ZIT3 <stirnseg_at_schaeffler.com>
Date: Fri, 1 Apr 2011 14:52:30 +0200

> From: David Weintraub [mailto:qazwart_at_gmail.com]
> Sent: Freitag, 1. April 2011 02:14
> To: Stirnweiss, Siegmund SZ/HZA-ZIT3
> Cc: users_at_subversion.apache.org
> Subject: Re: Using tags with SVN

> On Thu, Mar 31, 2011 at 12:31 PM, Stirnweiss, Siegmund SZ/HZA-ZIT3
> <stirnseg_at_schaeffler.com> wrote:
> > Hello,
> >
> > I'm currently thinking about migrating from CVS to SVN, since SVN is
said to
> > be the successor of CVS.
> >
> > When analyzing the differences between CVS and SVN I found tags are
treated
> > in a different way in SVN, than they were treated in CVS, because
the tag
> > concept in SVN is: A tag is just a "snapshot" of a project in time.

> Tags are suppose to be "snapshots" of a particular version of the
> application.

Exactly, in svn tags are a snapshot of the application, in cvs a tag on
a file is what it is called: a tag.

> 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.

> > 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.

> I just came to my current position a couple of months ago, and that's
> exactly what we were doing. Tagging particular files, and then
> attempting to build from that tag. I put an immediate stop to that. We
> build on the head of the branches now. That has eliminated about half
> of our build errors and deployments go much smoother.

> 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?

> Even better, Subversion tracks when things were tagged and branched.
> In CVS, you have no idea when a tag or a branch was created and
> applied.

Exactly, I also came across that. And I think that's very valuable
information.

Thanks, Siggi.
Received on 2011-04-01 14:53:10 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.