Re: Bug in git-status with non-ascii characters:
- From
- Wolfgang Fischer <wf@wf227.com>
- Date
- Jan 9, 2007, 14:14 UTC
- Message-ID
- <6EBAA8D1-9839-4B77-968A-2828B19A9BF7@wf227.com>
- In-Reply-To
- <17827.10918.897000.825178@lapjr.intranet.kiel.bmiag.de>
On 09.01.2007, at 06:39, Juergen Ruehle wrote:
Show 36 quoted lines
> Brian Gernhardt writes: >> `git status` always reports the following: >> >> ----- 8< ----- >> # On branch refs/heads/master >> # Untracked files: >> # (use "git add <file>..." to incrementally add content to commit) >> # >> # gitweb/test/Märchen >> no changes added to commit (use "git add" and/or "git commit [-a|-i|- >> o]") >> ----- 8< ----- >> >> When I do `rm gitweb/test/M<tab>` to remove this apparently unneeded >> file, `git status` reports: >> >> ----- 8< ----- >> # On branch refs/heads/master >> # Changed but not added: >> # (use "git add <file>..." to incrementally add content to commit) >> # >> # deleted: gitweb/test/Märchen >> # >> no changes added to commit (use "git add" and/or "git commit [-a|-i|- >> o]") >> ----- 8< ----- >> >> This is on Mac OS X, file system is HFS+ (Journaled). Is this >> expected? I can't figure out why it's happening. > > It's a known problem with HFS+: it uses different byte sequences to > identify the same file. Therefore git finds gitweb/test/Märchen > unchanged but also a gitweb/test/Märchen in the working directory > using a different byte sequence for the name as reported in status. If > you delete the file git doesn't find the file any longer and reports > that in status as well.
Since this problem is discussed every other week, how about changing the name of the test file to scheußlicher_Dateiname or so, since the sz-ligature does not have the problem of different UTF-8 normalization forms. It wont fix HFS+, but since HFS+ is designed to accept either UTF-8 normalization form and returning just NFD, nobody will change/fix HFS+ anyway.
Wolfgang