[[!comment format=mdwn
 username="http://joeyh.name/"
 nickname="joey"
 subject="comment 2"
 date="2013-04-04T19:47:50Z"
 content="""
Whups, this bug report was closed; I almost missed this new bug and test case.

So, on these filesystems that are horribly confused about case, it's possible for `mkdir FOO` to fail with \"already exists\", because there is a directory named `foo` ... but then `mkdir FOO/bar` fails with \"no such file or directory\". 

That is an intractable problem. It follows that it's simply not safe to use mixed case files on such a filesystem. You will always shoot your later self in the foot. (I personally think it's outright foolish to use a filesystem with such horrible semantics at all, but whatever.)

So.. I took a good look at this, and it turns out that

* since this is a crippled filesystem anyway, git-annex doesn't use symlinks on it
* so there's no reason to use the mixed case hash directories that we're stuck using to avoid breaking everyone's symlinks to the content
* so we can do what is already done for all bare repos, and make non-bare repos on crippled filesystems use the all-lower case hash directories
* which are, happily, all 3 letters long, so they cannot conflict with mixed case hash directories
* so I was able to 100% fix this and even resuming `git annex add` in the test case will recover and it will all just work.

Yay!
"""]]
