update-index: add --test-untracked-cache
It is nice to just be able to test if untracked cache is supported without enabling it. Helped-by: David Turner <dturner@twopensource.com> Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint
							parent
							
								
									113e641318
								
							
						
					
					
						commit
						eaab83d0e5
					
				|  | @ -18,7 +18,7 @@ SYNOPSIS | ||||||
| 	     [--[no-]skip-worktree] | 	     [--[no-]skip-worktree] | ||||||
| 	     [--ignore-submodules] | 	     [--ignore-submodules] | ||||||
| 	     [--[no-]split-index] | 	     [--[no-]split-index] | ||||||
| 	     [--[no-|force-]untracked-cache] | 	     [--[no-|test-|force-]untracked-cache] | ||||||
| 	     [--really-refresh] [--unresolve] [--again | -g] | 	     [--really-refresh] [--unresolve] [--again | -g] | ||||||
| 	     [--info-only] [--index-info] | 	     [--info-only] [--index-info] | ||||||
| 	     [-z] [--stdin] [--index-version <n>] | 	     [-z] [--stdin] [--index-version <n>] | ||||||
|  | @ -180,6 +180,16 @@ may not support it yet. | ||||||
| 	system must change `st_mtime` field of a directory if files | 	system must change `st_mtime` field of a directory if files | ||||||
| 	are added or deleted in that directory. | 	are added or deleted in that directory. | ||||||
|  |  | ||||||
|  | --test-untracked-cache:: | ||||||
|  | 	Only perform tests on the working directory to make sure | ||||||
|  | 	untracked cache can be used. You have to manually enable | ||||||
|  | 	untracked cache using `--force-untracked-cache` (or | ||||||
|  | 	`--untracked-cache` but this will run the tests again) | ||||||
|  | 	afterwards if you really want to use it. If a test fails | ||||||
|  | 	the exit code is 1 and a message explains what is not | ||||||
|  | 	working as needed, otherwise the exit code is 0 and OK is | ||||||
|  | 	printed. | ||||||
|  |  | ||||||
| --force-untracked-cache:: | --force-untracked-cache:: | ||||||
| 	For safety, `--untracked-cache` performs tests on the working | 	For safety, `--untracked-cache` performs tests on the working | ||||||
| 	directory to make sure untracked cache can be used. These | 	directory to make sure untracked cache can be used. These | ||||||
|  |  | ||||||
|  | @ -40,6 +40,7 @@ enum uc_mode { | ||||||
| 	UC_UNSPECIFIED = -1, | 	UC_UNSPECIFIED = -1, | ||||||
| 	UC_DISABLE = 0, | 	UC_DISABLE = 0, | ||||||
| 	UC_ENABLE, | 	UC_ENABLE, | ||||||
|  | 	UC_TEST, | ||||||
| 	UC_FORCE | 	UC_FORCE | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  | @ -1004,6 +1005,8 @@ int cmd_update_index(int argc, const char **argv, const char *prefix) | ||||||
| 			N_("enable or disable split index")), | 			N_("enable or disable split index")), | ||||||
| 		OPT_BOOL(0, "untracked-cache", &untracked_cache, | 		OPT_BOOL(0, "untracked-cache", &untracked_cache, | ||||||
| 			N_("enable/disable untracked cache")), | 			N_("enable/disable untracked cache")), | ||||||
|  | 		OPT_SET_INT(0, "test-untracked-cache", &untracked_cache, | ||||||
|  | 			    N_("test if the filesystem supports untracked cache"), UC_TEST), | ||||||
| 		OPT_SET_INT(0, "force-untracked-cache", &untracked_cache, | 		OPT_SET_INT(0, "force-untracked-cache", &untracked_cache, | ||||||
| 			    N_("enable untracked cache without testing the filesystem"), UC_FORCE), | 			    N_("enable untracked cache without testing the filesystem"), UC_FORCE), | ||||||
| 		OPT_END() | 		OPT_END() | ||||||
|  | @ -1119,6 +1122,8 @@ int cmd_update_index(int argc, const char **argv, const char *prefix) | ||||||
| 			setup_work_tree(); | 			setup_work_tree(); | ||||||
| 			if (!test_if_untracked_cache_is_supported()) | 			if (!test_if_untracked_cache_is_supported()) | ||||||
| 				return 1; | 				return 1; | ||||||
|  | 			if (untracked_cache == UC_TEST) | ||||||
|  | 				return 0; | ||||||
| 		} | 		} | ||||||
| 		if (!the_index.untracked) { | 		if (!the_index.untracked) { | ||||||
| 			uc = xcalloc(1, sizeof(*uc)); | 			uc = xcalloc(1, sizeof(*uc)); | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	 Christian Couder
						Christian Couder