Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> writes: > On Tue, 28 Aug 2007, Reece Dunn wrote: >> >> I have tried the following: >> >> git mv foo foo.tmp >> git mv foo.tmp Foo > > It may be "obvious" for "foo" vs "Foo", but what about all the > interesting cases like German, where the "sharp s" (single letter: > 'ß') capitalizes to SS (yes, two letters) because there simply *is* > no upper-case sharp-s. > > Does the filesystem compare 'ß' and 'ss' as equal? You really cannot > tell. Those two are actually known to be different. "ß" and "SS" would be harder: when words are ambiguous like "Masse" ("mass") against "Maße" ("measures"), the capitalization is actually allowed to turn "ß" into "SZ". > So how do you know what to do in the case of > > git mv straße strasse > > and both files "straße" and "strasse" exist and have the same > content and inode? Are they the same filename? Or are they two > filenames that are just hardlinked together? > > This is just an example of why case-insensitive filesystems are > TOTALLY INSANE! Those are different. The problem is "STRASSE" vs "straße" (identical). Things become even more fun in Turkish: "i" and "I" are _different_ letters not just because of case: the uppercase version of "i" actually is "İ", and the lowercase version of "I" is "ı". So what do you do with case insensitivity there? -- David Kastrup, Kriemhildstr. 15, 44793 Bochum - 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