Merge branch 'jc/fsck'
* jc/fsck: fsck-objects: Remove --standalone
This commit is contained in:
		| @ -10,7 +10,7 @@ SYNOPSIS | |||||||
| -------- | -------- | ||||||
| [verse] | [verse] | ||||||
| 'git-fsck-objects' [--tags] [--root] [--unreachable] [--cache] | 'git-fsck-objects' [--tags] [--root] [--unreachable] [--cache] | ||||||
| 		 [--standalone | --full] [--strict] [<object>*] | 		 [--full] [--strict] [<object>*] | ||||||
|  |  | ||||||
| DESCRIPTION | DESCRIPTION | ||||||
| ----------- | ----------- | ||||||
| @ -38,21 +38,14 @@ index file and all SHA1 references in .git/refs/* as heads. | |||||||
| 	Consider any object recorded in the index also as a head node for | 	Consider any object recorded in the index also as a head node for | ||||||
| 	an unreachability trace. | 	an unreachability trace. | ||||||
|  |  | ||||||
| --standalone:: |  | ||||||
| 	Limit checks to the contents of GIT_OBJECT_DIRECTORY |  | ||||||
| 	($GIT_DIR/objects), making sure that it is consistent and |  | ||||||
| 	complete without referring to objects found in alternate |  | ||||||
| 	object pools listed in GIT_ALTERNATE_OBJECT_DIRECTORIES, |  | ||||||
| 	nor packed git archives found in $GIT_DIR/objects/pack; |  | ||||||
| 	cannot be used with --full. |  | ||||||
|  |  | ||||||
| --full:: | --full:: | ||||||
| 	Check not just objects in GIT_OBJECT_DIRECTORY | 	Check not just objects in GIT_OBJECT_DIRECTORY | ||||||
| 	($GIT_DIR/objects), but also the ones found in alternate | 	($GIT_DIR/objects), but also the ones found in alternate | ||||||
| 	object pools listed in GIT_ALTERNATE_OBJECT_DIRECTORIES, | 	object pools listed in GIT_ALTERNATE_OBJECT_DIRECTORIES | ||||||
|  | 	or $GIT_DIR/objects/info/alternates, | ||||||
| 	and in packed git archives found in $GIT_DIR/objects/pack | 	and in packed git archives found in $GIT_DIR/objects/pack | ||||||
| 	and corresponding pack subdirectories in alternate | 	and corresponding pack subdirectories in alternate | ||||||
| 	object pools; cannot be used with --standalone. | 	object pools. | ||||||
|  |  | ||||||
| --strict:: | --strict:: | ||||||
| 	Enable more strict checking, namely to catch a file mode | 	Enable more strict checking, namely to catch a file mode | ||||||
|  | |||||||
| @ -14,7 +14,6 @@ | |||||||
| static int show_root = 0; | static int show_root = 0; | ||||||
| static int show_tags = 0; | static int show_tags = 0; | ||||||
| static int show_unreachable = 0; | static int show_unreachable = 0; | ||||||
| static int standalone = 0; |  | ||||||
| static int check_full = 0; | static int check_full = 0; | ||||||
| static int check_strict = 0; | static int check_strict = 0; | ||||||
| static int keep_cache_objects = 0; | static int keep_cache_objects = 0; | ||||||
| @ -68,7 +67,7 @@ static void check_connectivity(void) | |||||||
| 			continue; | 			continue; | ||||||
|  |  | ||||||
| 		if (!obj->parsed) { | 		if (!obj->parsed) { | ||||||
| 			if (!standalone && has_sha1_file(obj->sha1)) | 			if (has_sha1_file(obj->sha1)) | ||||||
| 				; /* it is in pack */ | 				; /* it is in pack */ | ||||||
| 			else | 			else | ||||||
| 				printf("missing %s %s\n", | 				printf("missing %s %s\n", | ||||||
| @ -82,7 +81,7 @@ static void check_connectivity(void) | |||||||
| 			for (j = 0; j < refs->count; j++) { | 			for (j = 0; j < refs->count; j++) { | ||||||
| 				struct object *ref = refs->ref[j]; | 				struct object *ref = refs->ref[j]; | ||||||
| 				if (ref->parsed || | 				if (ref->parsed || | ||||||
| 				    (!standalone && has_sha1_file(ref->sha1))) | 				    (has_sha1_file(ref->sha1))) | ||||||
| 					continue; | 					continue; | ||||||
| 				printf("broken link from %7s %s\n", | 				printf("broken link from %7s %s\n", | ||||||
| 				       obj->type, sha1_to_hex(obj->sha1)); | 				       obj->type, sha1_to_hex(obj->sha1)); | ||||||
| @ -390,7 +389,7 @@ static int fsck_handle_ref(const char *refname, const unsigned char *sha1) | |||||||
|  |  | ||||||
| 	obj = lookup_object(sha1); | 	obj = lookup_object(sha1); | ||||||
| 	if (!obj) { | 	if (!obj) { | ||||||
| 		if (!standalone && has_sha1_file(sha1)) { | 		if (has_sha1_file(sha1)) { | ||||||
| 			default_refs++; | 			default_refs++; | ||||||
| 			return 0; /* it is in a pack */ | 			return 0; /* it is in a pack */ | ||||||
| 		} | 		} | ||||||
| @ -464,10 +463,6 @@ int main(int argc, char **argv) | |||||||
| 			keep_cache_objects = 1; | 			keep_cache_objects = 1; | ||||||
| 			continue; | 			continue; | ||||||
| 		} | 		} | ||||||
| 		if (!strcmp(arg, "--standalone")) { |  | ||||||
| 			standalone = 1; |  | ||||||
| 			continue; |  | ||||||
| 		} |  | ||||||
| 		if (!strcmp(arg, "--full")) { | 		if (!strcmp(arg, "--full")) { | ||||||
| 			check_full = 1; | 			check_full = 1; | ||||||
| 			continue; | 			continue; | ||||||
| @ -477,14 +472,9 @@ int main(int argc, char **argv) | |||||||
| 			continue; | 			continue; | ||||||
| 		} | 		} | ||||||
| 		if (*arg == '-') | 		if (*arg == '-') | ||||||
| 			usage("git-fsck-objects [--tags] [--root] [[--unreachable] [--cache] [--standalone | --full] [--strict] <head-sha1>*]"); | 			usage("git-fsck-objects [--tags] [--root] [[--unreachable] [--cache] [--full] [--strict] <head-sha1>*]"); | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	if (standalone && check_full) |  | ||||||
| 		die("Only one of --standalone or --full can be used."); |  | ||||||
| 	if (standalone) |  | ||||||
| 		putenv("GIT_ALTERNATE_OBJECT_DIRECTORIES="); |  | ||||||
|  |  | ||||||
| 	fsck_head_link(); | 	fsck_head_link(); | ||||||
| 	fsck_object_dir(get_object_directory()); | 	fsck_object_dir(get_object_directory()); | ||||||
| 	if (check_full) { | 	if (check_full) { | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user
	 Junio C Hamano
					Junio C Hamano