fsck: verify commit-graph
commite0fd51e1d7d3877d4b0b4133c763d46b65d46f7a
authorDerrick Stolee <dstolee@microsoft.com>
Wed, 27 Jun 2018 13:24:43 +0000 (27 09:24 -0400)
committerJunio C Hamano <gitster@pobox.com>
Wed, 27 Jun 2018 17:29:10 +0000 (27 10:29 -0700)
treef804641d825b6c1a4573c50ed27cf113b7441a87
parent41df0e307fede8ad01799322af41d8b59d2f6edf
fsck: verify commit-graph

If core.commitGraph is true, verify the contents of the commit-graph
during 'git fsck' using the 'git commit-graph verify' subcommand. Run
this check on all alternates, as well.

We use a new process for two reasons:

1. The subcommand decouples the details of loading and verifying a
   commit-graph file from the other fsck details.

2. The commit-graph verification requires the commits to be loaded
   in a specific order to guarantee we parse from the commit-graph
   file for some objects and from the object database for others.

Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/git-fsck.txt
builtin/fsck.c
t/t5318-commit-graph.sh