Suppose I do this:
cvs co -P -r SOME_TAG some_module
...then obviously some_module has the sticky tag SOME_TAG applied to it
throughout. Fine.
Now suppose I cd somewhere into its guts and update a file to a
different sticky tag. If I then do a cvs update in that directory (or
anywhere above it, for that matter) everything works like you'd assume:
the files tagged with SOME_TAG don't change, and the file I just updated
to its other sticky tag retains it.
But if I update that file to a revision which has state "dead", thus
causing CVS to remove it from the directory, then when I do a cvs update
in that directory, instead of recognizing that I've updated that file to
a sticky tag (i.e. the tag identifying a dead revision), CVS brings back
the previous revision of the file (the one tagged with SOME_TAG).
So here's an illustration:
cvs co -P -r SOME_TAG some_module
...time passes...
cd some_module/into/its/guts
cvs update -r NEWER_TAG file_present_but_will_be_killed
cvs server: warning: file_present_but_will_be_killed is (no longer)
pertinent
cvs -q update
U file_present_but_will_be_killed
cvs status -v file_present_but_will_be_killed
...status information showing file_present_but_will_be_killed's sticky
tag to be SOME_TAG, not NEWER_TAG
Is this desired functionality?
cvs 1.10 on Solaris 2.7.
Cheers,
Laird