On Jan 19, 2008, at 3:48 AM, Dmitry Potapov wrote:
In this case, git's index counts as a filesystem that treats filenames
as sequences of bytes. But yes, it is possible, though somewhat
difficult, to produce this problem on just HFS+. It's far more common
when the file was originally added on a different filesystem
From what the HFS+ technote says, it produces a variant of Normal
Form D. This variant, while not guaranteed to be stable across
versions of HFS+, but in practice it is stable.
What would you prefer I call it?
I'm not sure how that would solve anything. Sure, it would provide a
stable, known encoding for git to compare filenames against, but that
would only work if the filename is known to be Unicode, and as it has
been pointed out on other filesystems the filename can be whatever
encoding the user chooses (which, IMHO, is a flaw).
It looks like their problem was binary compatibility with strings from
other clients that were using Normal Form C instead of Normal Form D.
git's problem is that it's only even using a known encoding on HFS+.
-Kevin Ballard
--
Kevin Ballard
http://kevin.sb.orgkevin@sb.orghttp://www.tildesoft.com