[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
cvs is not fully honoring tag deletes
From: |
Whitner, Michael |
Subject: |
cvs is not fully honoring tag deletes |
Date: |
Wed, 11 Mar 2009 15:01:15 -0400 |
cvs is not fully honoring tag deletes
create a tag on a file.
checkout the file using that tag
delete the tag from the file (rtag -d, tag -d -- neither work properly)
various commands will not mistakenly report that the tag still exists.
this is of particular importance because all of our automation scripts
use "rdiff" to test if a tag is "valid".
This is now reporting that tags are valid, when in fact they've been
deleted. :(
for instance:
# create the tag
cvs rtag TEST_TAG somefile
# actually use the tag -- check out the file.
cvs checkout -r TEST_TAG somefile
# delete the file
Rm somefile
# now delete the tag.
cvs rtag -d TEST_TAG somefile
# now, try to rdiff to see if the tag is valid:
cvs -q rdiff -r TEST_TAG somefile
# this is broken -- it returns data, as well as an exit code of
'0', when, in fact, the tag does not exist & should return nothing, as
the tag does not exist.
Compare to:
cvs -q rdiff -r BOGUS_TEST_TAG somefile
cvs [rdiff aborted]: no such tag BOGUS_TEST_TAG
echo $?
1
Also, 'checkout' is broken.
cvs checkout -p -r TEST_TAG somefile
this is returning a 0-byte file, with an exit-code of '0'.
It should return a non-zero exit code & spew an error message.. like:
cvs checkout -p -r BOGUS_TEST_TAG somefile
cvs [checkout aborted]: no such tag BOGUS_TEST_TAG
(exit code is '1')
If you "cvs log" the file, the tag does not exist...
But, if you look at: CVSROOT/val-tags these removed tags still exist in
that file.
Michael R. Whitner
Principal Software Engineer
Sterling Commerce
michael_whitner@stercomm.com
Tel: +1 734 930 7901
Fax: +1 734 930 3201
www.sterlingcommerce.com
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- cvs is not fully honoring tag deletes,
Whitner, Michael <=