On Tue, Dec 04 2018, Jeff King wrote: > On Thu, Nov 29, 2018 at 03:59:26PM +0100, Ævar Arnfjörð Bjarmason wrote: > >> This is the thing I was wrong about, in retrospect probably because I'd >> been putting PATH_TO_REPO in objects/info/alternates, but we actually >> need PATH_TO_REPO/objects, and "git gc" won't warn about this (or "git >> fsck"). Probably a good idea to patch that at some point, i.e. whine >> about paths in alternates that don't have objects, or at the very least >> those that don't exist. #leftoverbits > > We do complain about missing directories; see alt_odb_usable(). > Pointing to a real directory that doesn't happen to contain any objects > is harder. If there are no loose objects, there might not be any hashed > object directories. For a "real" object database, there should always be > a "pack/" directory. But technically the object storage directory does > not even need to have that; it can just be a directory full of loose > objects that happens not to have any at this moment. > > That said, I suspect if we issued a warning for "woah, it looks like > this doesn't have any objects in it, nor does it even have a pack > directory" that nobody would complain. Yeah, although see my <87sgzjyif2.fsf@xxxxxxxxxxxxxxxxxxx>, I also ran into a different issue. I think a warning (or even error) like this would be more useful: test ! -d $objdir && error... # current behavior test -d $objdir/objects && error "Did you mean $objdir/objects, silly?" # new error I.e. I suspect I'm not the only one who's not read the documentation carefully enough and thought it was a path to the root of the repo and wondered why it silently didn't work.