Re: does a successful 'git gc' imply 'git fsck'
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Dec 2, 2012, 09:31 UTC
- Message-ID
- <7vlidgls09.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <CAMK1S_iBq1ReGkjuy2UBENSQXOWyKj2ZzSCcg7Z89FVtVL2wMw@mail.gmail.com>
Sitaram Chamarty <sitaramc@gmail.com> writes:
> If I could assume that a successful 'git gc' means an fsck is not > needed, I'd save a lot of time. Hence my question.
When it does "repack -a", it at least scans the whole history so you would be sure that all the commits and trees are readable for the purpose of enumerating the objects referred by them (and a bit flip in them will likely be noticed by zlib inflation).
But a "gc" does not necessarily run "repack -a" when it does not see too many pack files, so it can end up scanning only the surface of the history to collect the recently created loose objects into a pack, and stop its traversal without going into existing packfiles.