Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> writes: > 1. We still have this check of objects/17/ in builtin/gc.c today. Why > objects/17/ and not e.g. objects/00/ to go with other 000* magic such > as the 0000000000000000000000000000000000000000 SHA-1?d Statistically > it doesn't matter, but 17 seems like an odd thing to pick at random > out of 00..ff, does it have any significance? There is no "other 000* magic such as ...". There is only one 0{40} magic and that one must be memorable and explainable. The 1/256 sample can be any one among 256. Just like the date string on the first line of the output to be used as the /etc/magic signature by format-patch, it was an arbitrary choice, rather than a random choice, and unlike 0{40} this does not have to be memorable by general public and I do not have to explain the choice to the general public ;-) > 2. It seems overly paranoid to be checking that the files in > .git/objects/17/ look like a SHA-1. There is no other reason than futureproofing. We were paying cost to open and scan the directory anyway, and checking that we only count the loose object files was (and still is) a sensible thing to do to allow us not even worry about the other kind of things we might end up creating there.