[cvsnt] Re: cvsnt 2.0.19 (and 2.0.22, not 2.0.21), cvs up -C works only for :local:
Tony Hoyle
tmh at nodomain.org
Mon Jan 26 01:49:01 GMT 2004
Mark Levedahl wrote:
> "filenames_case_insensitive" in client.c. That change removed the ability
> of the client to honor "toss_local_changes": the other patch I sent restores
> toss_local_changes to former functionality though may be confusing two
> pieces of logic that you feel should be kept seperate. There is a clear
> cause in the code changes past 2.0.12a for update -C to fail, and update -C
> has worked very reliably for several years across multiple cvs and cvsnt
As I wrote a while back, when I first started using cvs, update -C was
broke and I never used it again until someone complained it broke a
couple of months ago.
The code is quite tricky as it needs to handle case sensitivity changes.
eg. if there are two files Fred and FRED, then whatever one you check
out should be the one that is updated, and the other one should just
generate a warning. 'Update -S' essentially reverses this logic so you
get the other file - once a case is selected it should be preserved,
even across an update -C (which is one good reason not to go around
deleting files). The old Unix code would simply alternate randomly
between files, which wasn't particularly useful. As it is it seems to
work well enough, but could really do with server-side support, which
may be added at some point.
Tony
More information about the cvsnt
mailing list