[cvsnt] Inconsistent CVSNT "case" behaviour

Arthur Barrett arthur.barrett at march-hare.com
Mon Oct 26 00:34:27 GMT 2009


Andrew,

> To me, the behavior of CVSNT should be consistent with the
> case-sensitive nature of the
> 
> repository.  In other words, CVSNT should only create 
> folders, using the correct case-sensitive
> name matching the folder in which the file(s) resides, when it
> encounters a file that matches
> the checkout criteria.
> 

If that is how you would like it to behave then please provide a patch
to the cvsnt-dev newsgroup.  I personally prefer these sorts of changes
to be user switchable in case someone wants the old behaviour, but that
is not a requirement for the patch.

> 
> Is this a known problem/limitation?
> 
> Is this behavior still present in EVS?

I don't think we've created a FAQ on this yet, but one is overdue.  

I have never worked in a professional IT department where two files or
directories with identical names that differ only in case were ever
stored in the same directory.  We could probably write an entire
operating system or application where every file and command was
'monica', just with different case combinations, but the converstations
would be hilarious: 

Arthur: I've got a new monica.c for the mOnica project, how do I test
it?
Tony: Just compile monica and then put it into /MonicA and run it from
there
Arthur: I did that but it seems to be the old version
Tony: You've copied it to /MOnicA then, you need to copy it to /monicA
Arthur: Sorry is that /monicA or /MonicA 
Tony: My bad - should be /mOnicA
Arthur: Can we try just calling it 'bin' instead?
Tony: But this operating system is CASE SENSITIVE we should be able to
use the same names!


The philosophy that has always driven the CVSNT project is for feature
to be included that help professional IT workers - professional
programmers writing commercial software.  Now to date noone has ever
submitted a real-world scenario that really requires support for
multiple files or directories to exist in the same directory that differ
in name only by case, and if many people did then we'd probably spend
more hours on it - as it is we already have a case sensitive driver for
CVSNT on windows and also the case select switch on checkout - and
that's more than I've seen in any other version control tool proprietary
or open source (though since you work for CA - maybe you know what
CA/Harvest does - one of the few SCCM tools I've not personally used).


The 'case sensitive' driver is available at additional cost for
customers who need both 'Hello.cpp' and 'hello.cpp' (which windows
cannot usually provide).  Contact sales at march-hare.com if this is
required, and include in your request: total number of people using CVS
server and/or client, server OS, client OS, and locations (eg: 100 x
Bangalore, 20 x Boston and 30 x Brussels).

> 
> Is there any way to change the behavior by, say, the use of a
> command-line switch?
> 

Yes 'cvs co -S', see the manual:
http://www.cvsnt.org/manual/html/checkout.html#checkout-options

Regards,



Arthur Barrett




More information about the cvsnt mailing list