[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Renaming files on win32

From: Branko Čibej <brane_at_xbc.nu>
Date: 2004-12-22 11:44:11 CET

Gili wrote:

> On Tue, 21 Dec 2004 14:02:22 +0100, Thomas Kindler wrote:
>
> > I think the best way to handle this would be to add a new property
> >(e.g. svn:nocasefiles or something) for folders that prevents the
> >addition of case-problematic files.

How would you make this work, in general? The problem here is that
"case-problematic" depends on the client OS, filesystem *and* locale. I
don't think there's any way we can make all clients do the right thing
in all situations.

There are basically two issues here. The more common one is when a user
adds a file on one OS/FS that causes problems on another OS/FS (this
isn't limited to case collisions). The only way to reliably detect this
is on the affected client, but of course once its detected, said client
usually can't do anything about it. The solution here is usually to
rename the file on the server (using URLs), but we can't do that
automatically.

Then there's the horrible issue of broken tools changing file case on
you behind your back (this tends to happen too often on Windows),
usually after some version of the file has alrealy been committed. SVN
could detect this change locally, but because of the OS/FS/locale
dependencies I mentioned above, we must find a way to do this /without/
using strcasecmp. (Why? Because SVN uses UTF-8 internally, and there's
no locale-independent case-folding function).

-- Brane

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Dec 22 13:24:54 2004

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.