From f9253394a271a9fefdd234a86c228adeb6d0136a Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Wed, 29 Jun 2005 02:51:27 -0700 Subject: [PATCH] Add git-verify-pack command. Given a list of .idx files, this command validates the index file and the corresponding .pack file for consistency. This patch also uses the same validation mechanism in fsck-cache when the --full flag is used. During normal operation, sha1_file.c verifies that a given .idx file matches the .pack file by comparing the SHA1 checksum stored in .idx file and .pack file as a minimum sanity check. We may further want to check the pack signature and version when we map the pack, but that would be a separate patch. Earlier, errors to map a pack file was not flagged fatal but led to a random fatal error later. This version explicitly die()s when such an error is detected. Signed-off-by: Junio C Hamano Signed-off-by: Linus Torvalds --- Makefile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index 9384c538cb..2f9e247d8d 100644 --- a/Makefile +++ b/Makefile @@ -36,7 +36,7 @@ PROG= git-update-cache git-diff-files git-init-db git-write-tree \ git-diff-helper git-tar-tree git-local-pull git-write-blob \ git-get-tar-commit-id git-apply git-stripspace \ git-cvs2git git-diff-stages git-rev-parse git-patch-id \ - git-pack-objects git-unpack-objects + git-pack-objects git-unpack-objects git-verify-pack all: $(PROG) @@ -45,7 +45,7 @@ install: $(PROG) $(SCRIPTS) LIB_OBJS=read-cache.o sha1_file.o usage.o object.o commit.o tree.o blob.o \ tag.o date.o index.o diff-delta.o patch-delta.o entry.o \ - epoch.o refs.o csum-file.o + epoch.o refs.o csum-file.o verify_pack.o LIB_FILE=libgit.a LIB_H=cache.h object.h blob.h tree.h commit.h tag.h delta.h epoch.h csum-file.h pack.h @@ -124,6 +124,7 @@ git-rev-parse: rev-parse.c git-patch-id: patch-id.c git-pack-objects: pack-objects.c git-unpack-objects: unpack-objects.c +git-verify-pack: verify-pack.c git-http-pull: LIBS += -lcurl git-rev-list: LIBS += -lssl -- cgit v1.2.3