From: Wolfgang Fischer Date: Tue, 09 Jan 2007 14:14:01 GMT Subject: Re: Bug in git-status with non-ascii characters: 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: > Brian Gernhardt writes: >> `git status` always reports the following: >> >> ----- 8< ----- >> # On branch refs/heads/master >> # Untracked files: >> # (use "git add ..." 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` to remove this apparently unneeded >> file, `git status` reports: >> >> ----- 8< ----- >> # On branch refs/heads/master >> # Changed but not added: >> # (use "git add ..." 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