[Zope-Coders] CVS usage - never use an empty string for a tag
Ken Manheimer
klm@zope.com
Fri, 16 Aug 2002 11:03:09 -0400 (EDT)
Occasionally the CVS repository tags db ('val-tags') gets a bogus empty
tag, resulting in warnings when people do updates, like so:
$ cvs -q up -dP
cvs server: duplicate key found for `y'
These warnings are harmless, as far as i can tell, except for the
confusion and clutter they cause. They result from attempts to use an
empty string when specifying revisions, eg for the '-j' branch-merge
action. That doesn't work, and leaves a bogus entry in the CVS 'val-tags'
tags bookkeeping file. Don't do that!
Instead, you probably want to be doing a 'cvs update -A' to get the HEAD
versions of your checked-out files, or the '-j' option to merge changes,
with (if i recall correctly) '-jHEAD' to merge to the head. See the cvs
man page for details.
I mention this because we've had to go and clear the bogus empty tag from
our val-tags file twice in the past two days - i figure someone is being
particularly persistent about trying the empty-string trick to merge
changes to the head - don't do that!-)
(If anyone has time to look into using CVSROOT/commitinfo to detect and
prevent such commits, that'd be nice, but i'm not even sure commitinfo is
passed enough info to do so, sigh...)
Happy hacking!
--
Ken
klm@zope.com