Re: Renaming files on win32
Branko Čibej <[email protected]>
| Newsgroups | gmane.mail.eyebrowse.user,gmane.comp.version-control.subversion.devel |
|---|---|
| Message-ID | <[email protected]> |
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