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
    lesmikes...@gmail.com

Reply via email to