diff options
author | shejialuo <shejialuo@gmail.com> | 2025-02-28 00:07:48 +0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2025-02-27 14:03:10 -0800 |
commit | c1cf918d3adbe832fdaf278a23151502be255bb2 (patch) | |
tree | e800163941e13b1f49a3ef7b0a3d19103a4874b9 /builtin/commit-graph.c | |
parent | e1c9548eae406a7aa7274685f8bdbc353827bf16 (diff) |
builtin/fsck: add `git refs verify` child process
At now, we have already implemented the ref consistency checks for both
"files-backend" and "packed-backend". Although we would check some
redundant things, it won't cause trouble. So, let's integrate it into
the "git-fsck(1)" command to get feedback from the users. And also by
calling "git refs verify" in "git-fsck(1)", we make sure that the new
added checks don't break.
Introduce a new function "fsck_refs" that initializes and runs a child
process to execute the "git refs verify" command. In order to provide
the user interface create a progress which makes the total task be 1.
It's hard to know how many loose refs we will check now. We might
improve this later.
Then, introduce the option to allow the user to disable checking ref
database consistency. Put this function in the very first execution
sequence of "git-fsck(1)" due to that we don't want the existing code of
"git-fsck(1)" which would implicitly check the consistency of refs to
die the program.
Last, update the test to exercise the code.
Mentored-by: Patrick Steinhardt <ps@pks.im>
Mentored-by: Karthik Nayak <karthik.188@gmail.com>
Signed-off-by: shejialuo <shejialuo@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin/commit-graph.c')
0 files changed, 0 insertions, 0 deletions