[cvsnt] Re: Latest Updates

Oliver Giesen ogware at gmx.net
Wed Mar 3 16:10:34 GMT 2004


Tony Hoyle wrote:

>>1. using a different vendor branch is still possible and still messes up 
>>the tagging (i.e. one branch with multiple names) - there isn't even a 
>>warning
> 
> Since it's always done this, I'm not too bothered at this stage.

Well, CVS has been doing a lot of things always...


>>2. using an already existing release tag only produces a warning - 
>>wouldn't it be better to forbid this altogether unless the -f option was 
>>given? - after all this is usually a clear sign of a user-mistake...
> 
> It's the same as what happens if you do a 'cvs tag' and it already
> exists (which is essentially what you're doing).

The difference is that tag is not all that I'm doing when I import. 
Import effectively wraps add, commit and tag in one operation. I only 
get a warning about the tagging - the add and the commit are allowed 
without complaints.


> There's also the problem that there's no provision for error within
> the import code... it does everything in a single pass and won't abort
> due to errors.  Because of the way it works this isn't easily fixable
> either.

I feared so. A real "rollback" in case of such an error would indeed be 
desirable IMO.


>>3. it even let's me switch vendor branch and release tag again
> 
> Actually you can't. 

Yes, I could. I just tried it. I wouldn't have written it otherwise. I got:

cvs -z9 -q import -m "test" cvstemp arelease2 testvendor2
cvs server: WARNING: tag testvendor2 already exists in 
/testroot/cvstemp/Test.txt,v
U cvstemp/Test.txt

No conflicts created by this import


No error, just a warning. And the file was imported nevertheless and I 
got the two-named vendor branch again. In fact, apart from the warning 
message, it's exactly the same behaviour as the one that started this 
whole discussion months ago...

Client and server are both 2.0.33 for sure this time. Access method was 
SSPI to a locally installed server.


 > It'll give an error as the tags are different...
> the checking will stop you doing some of the worst mistakes (even -f
> won't override this):
> 
> D:\t\i>cvs -d d:\repo import -m "" -f test b a
> cvs import: ERROR: tag b already exists in D:/repo/test/t.txt,v
> U test/u.txt
> 
> No conflicts created by this import
> 
> *** ERRORS DURING THIS IMPORT ***

It still looks as if it imported the file nevertheless though. What good 
is an error if it doesn't abort the operation?


>>Thus, objectively speaking, the only change between 2.0.19 and 2.0.33 is 
>>the warning when using an existing tag...
> 
> There's quite a bit of difference really.

I know there is, but that's all that's apparent to "the outside". That 
and the -f option of course.

Cheers,

-- 
Oliver
----	------------------
JID:	ogiesen at jabber.org
ICQ:	18777742	(http://wwp.icq.com/18777742)



More information about the cvsnt mailing list