"H. Peter Anvin" <hpa@xxxxxxxxx> writes: > I was investigating a problem that Ingo Molnar reported on the > linux-2.6-tip.git repository on kernel.org. Unfortunately I was not > able to reproduce his problem (which is a problem in itself) but I did > run into another oddity: > > : hera 4 ; git fsck > > [lots of dangling commits deleted] > missing blob af0e01d4c663a101f48614e40d006ed6272d5c36 > > : hera 5 ; git cat-file blob af0e01d4c663a101f48614e40d006ed6272d5c36 > /* > * debugfs.h - a tiny little debug file system > * > * Copyright (C) 2004 Greg Kroah-Hartman <greg@xxxxxxxxx> > * Copyright (C) 2004 IBM Inc. > * > [... rest of blob deleted ...] > > Okay, what is going on here? Is the blob borrowed from one of its alternate object store, and not in a pack? That would explain (note that I am not saying "justify" here, just "explain") the symptom. "git fsck" unlike "git fsck --full" does not validate objects in pack nor objects you borrow from your neighbour via objects/info/alternates. But it still does the connectivity check fully from your refs. And if it finds an object that ought to be reachable from your refs that it hasn't validated, it gives the "missing" warning above. There is a check to exclude objects in packs when running "git fsck" without --full from this warning but I do not see a corresponding exclusion of objects that were borrowed from your neighbour which we didn't check either. But that is just a conjecture from a cursory looking at the current code. I do not remember (or did not know from the beginning) some details of it. And that is why I asked you if "git fsck --full" reports it missing in my earlier response to you. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html