[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Exporting file versions

From: Greg A. Woods
Subject: Re: Exporting file versions
Date: Tue, 15 Oct 2002 21:24:43 -0400 (EDT)

[ On Tuesday, October 15, 2002 at 14:15:41 (-0700), Jason Yeung wrote: ]
> Subject: Exporting file versions
> Because my project has a lot of files, creating tags for each version of a
> file would be very tedious. I was wondering if there's a way to export files
> without creating tags? If you need tags to export, what would be the easiest
> way to create the tags without going through every file and create tags
> individually?

Others have answered your question about the detailed mechanics of "cvs
export" and how it uses, and why it needs, tags.

It doesn't seem though that anyone's really addressed the larger issue
of why you think you need to individually tag each file by hand.

Why oh why do you think you need to individually tag each file in a

The common practice for creating a release of collection of files is to
get a working directory containing those files into a state where all
the files are in a consistent, coherent, and working state (whatever
that may mean for a given collection of files), and to make sure that
all changes to any files in that directory have been committed to the
repository.  This means that in your working directory you effectively
now have a list of all the "current" revisions of all the files in the
module for which the working directory represents.  Then from the "top"
(or "root") of that working directory you simply apply a tag to all of
the files at once with one single simple "cvs tag" command which
recursively walks down through the working directory operating on each
file in sequence.

On very rare occasions you may have to manually adjust the position of a
tag on any given file to tweak a release, but that is indeed a very rare
thing to have to do.  (especially rare if you use branches to create
your releases on)

Your question also begs the question as to whether or not you've really
learned yet about the recursive nature of how CVS normally operates on
all the files in a module with one command (if they "need" whatever
operation is being requested, that is).  I would suggest you sit down
for a couple of hours or so and really carefully read through the CVS
manual from the cover up to at least the "References" section.

You might also want to have a read through some of the more generic
discussions about the bigger picture of software configuration
management that can be found through this WWW page:

Some of those links have gone stale, but often Google can find them
again, or will have a copy cached (as will

See also:

                                                                Greg A. Woods

+1 416 218-0098;            <address@hidden>;           <address@hidden>
Planix, Inc. <address@hidden>; VE3TCP; Secrets of the Weird <address@hidden>

reply via email to

[Prev in Thread] Current Thread [Next in Thread]