Merge branch 'master' of ssh://git-annex.branchable.com

This commit is contained in:
Joey Hess 2013-04-04 16:42:15 -04:00
commit 085edc1be8

View file

@ -0,0 +1,22 @@
[[!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!
"""]]