Peter Loron wrote, On 10/26/2007 05:08 PM:
We have a situation where we have a large tree of files checked out. Each day,
a small subset of those files are tagged. I was hoping I could revert a tagged
set of files easily with one update or checkout command like this:
cvs update -r prop_20071022 <moduleroot>
...what winds up happening is that the files with the given tag are present,
but everything else is deleted. What I'd like to be able to do is that
operation, but keep all the other files unmodified. I know can can go through
the list of files with a given tag, and issue an update command for each file,
specifying the tag, but that's a hassle.
Any insights other than "tag the whole tree not just a few files"?
Thanks!
-Pete
From a copy of the manual[1], I think you want to use one or two "-j"[2]
options with update. I don't think the -j merge will remove files[3] just
because there is no tag on some files, but it may. You may be stuck using the
implicit Date tag, i.e., figure out where in time you want to revert to and
use "update -D"[2] with the understanding that you will likely have a sandbox
with a sticky tag, however this can be useful to finally apply that tag to the
whole tree instead of just a few files.
In the end you will probably be happier when you learn to "tag the whole tree
not just a few files" in the beginning. :) (Sorry, but it is generally true.)
[1] references against a local copy of the normal CVS cederqvist manual from
ftp.gnu.org[1], which was untared in /tmp/.
http://ftp.gnu.org/non-gnu/cvs/source/stable/1.11.21/cederqvist-1.11.21.html.tar.bz2
[2] file:///tmp/cederqvist-1.11.21.html/cvs_16.html#SEC155
[3] file:///tmp/cederqvist-1.11.21.html/cvs_5.html#SEC63
--
Todd Denniston
Crane Division, Naval Surface Warfare Center (NSWC Crane)
Harnessing the Power of Technology for the Warfighter