git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Trouble with case-insensitive filesystems

From
RRRocco Rutte <pdmef@gmx.net>
Date
Oct 26, 2007, 14:52 UTC
Message-ID
<20071026145204.GA294@localhost.daprodeges.fqdn.th-h.de>
Hi,

after importing the opensolaris hg repo into git, I noticed that git gets confused if the repo contains files that clash on case-insensitive filesystems (here on OS X, I can't test Cygwin and Win32). git-checkout tells me that these files are modified, git-status gives me:

$ git status # On branch master # Changed but not updated: # (use "git add <file>..." to update what will be committed) # # modified: usr/src/cmd/lp/filter/postscript/font/devpost/HB # modified: usr/src/cmd/lp/filter/postscript/font/devpost/HB.name # modified: usr/src/cmd/lp/filter/postscript/font/devpost/HI # modified: usr/src/cmd/lp/filter/postscript/font/devpost/HI.name # modified: usr/src/cmd/lp/filter/postscript/font/devpost/HX # modified: usr/src/cmd/lp/filter/postscript/font/devpost/HX.name # modified: usr/src/cmd/lp/filter/postscript/font/devpost/charlib/LH # modified: usr/src/lib/libldap4/common/Version.c # no changes added to commit (use "git add" and/or "git commit -a")

...without touching anything. Yes, there's a version.c file next to Version.c, HI.name next to Hi.name and so on.

I'm not really sure what I'm expecting git to do, but I guess I want it to abort a checkout and only continue with -f. But at the very least, it should issue a big fat warning (one may decide to work in some area without clashes).

I really have no idea how to efficiently detect that at runtime and which areas of git to look at for patching...

Rocco
Next: Andreas Ericsson
Message 1 of 5 in “Trouble with case-insensitive filesystems”
  1. Rocco RutteOct 26, 2007
  2. Andreas EricssonOct 26, 2007
  3. Rocco RutteOct 26, 2007
  4. Jeff KingOct 26, 2007
  5. Jean-François VeilletteOct 26, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.