Re: Cross-Platform Version Control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Wed, 13 May 2009, Theodore Tso wrote:
> 
> Stupid question --- if we get something that works for Windows and
> MacOS X, is there any reason why we need to solve the general problem
> of case-insentive filesystems?

Qutie frankly, I don't think we're even very close to getting anything 
that works for Windows of OS X.

Case-insensitivity is _hard_.

The "easy" case is to just handle the OS X craxy pseudo-NFD format, and at 
least turn that into NFC (and perhaps add a config option to do latin1 and 
EUC-JP to utf-8 too) and. At that point, we at least handle regular utf-8 
the same way.

Doing the latin1/EUC-JP thing would actually to some degree be more 
interesting than the OS X NFD case, because that really does require 
two-way conversion, and we can "test" that even on sane filesystems (ie 
play at having a Latin1 filesystem).

That said, I suspect there aren't that many people who care about latin1 
filesystems. I dunno about EUC-JP (and variants - for all I know, 
shift-JIS and other cases may be the more common ones).

Of course, if we do everything right, maybe the windows people would 
actually like us to keep the filesystem-native representation in UTF-16LE 
or whatever the crazy format is that Windows really uses deep down.

My point being that all of these things happen even without the added 
worry about case. And in many ways, not worrying about case should 
probably be the first step. We do have some support for worrying about 
case, but trying to solve both things at the same time isn't going to be 
workable, I suspect.

Case insensitivity should never ever involve a _conversion_ (if it does, 
you get all kinds of crazy behavior), it's just purely a _comparison_ 
issue, so the two really are fundamentally different.

Of course, the reason OS-X seems to be so messed up is exactly that the 
morons at Apple didn't understand the difference between conversion and 
comparison, and mixed them up.

		Linus
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]