git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v8 03/11] update-index: add --test-untracked-cache

From
Christian Couder <christian.couder@gmail.com>
Date
Jan 27, 2016, 06:57 UTC
Message-ID
<1453877887-11586-4-git-send-email-chriscool@tuxfamily.org>
In-Reply-To
<1453877887-11586-1-git-send-email-chriscool@tuxfamily.org>

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>
---
 Documentation/git-update-index.txt | 12 +++++++++++-
 builtin/update-index.c             |  5 +++++
 2 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/Documentation/git-update-index.txt b/Documentation/git-update-index.txt
index f4e5a85..a0afe17 100644
--- a/Documentation/git-update-index.txt
+++ b/Documentation/git-update-index.txt
@@ -18,7 +18,7 @@ SYNOPSIS
 	     [--[no-]skip-worktree]
 	     [--ignore-submodules]
 	     [--[no-]split-index]
-	     [--[no-|force-]untracked-cache]
+	     [--[no-|test-|force-]untracked-cache]
 	     [--really-refresh] [--unresolve] [--again | -g]
 	     [--info-only] [--index-info]
 	     [-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
 	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::
 	For safety, `--untracked-cache` performs tests on the working
 	directory to make sure untracked cache can be used. These
diff --git a/builtin/update-index.c b/builtin/update-index.c
index 1e546a3..62222dd 100644
--- a/builtin/update-index.c
+++ b/builtin/update-index.c
@@ -40,6 +40,7 @@ enum uc_mode {
 	UC_UNSPECIFIED = -1,
 	UC_DISABLE = 0,
 	UC_ENABLE,
+	UC_TEST,
 	UC_FORCE
 };
 
@@ -1004,6 +1005,8 @@ int cmd_update_index(int argc, const char **argv, const char *prefix)
 			N_("enable or disable split index")),
 		OPT_BOOL(0, "untracked-cache", &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,
 			    N_("enable untracked cache without testing the filesystem"), UC_FORCE),
 		OPT_END()
@@ -1119,6 +1122,8 @@ int cmd_update_index(int argc, const char **argv, const char *prefix)
 			setup_work_tree();
 			if (!test_if_untracked_cache_is_supported())
 				return 1;
+			if (untracked_cache == UC_TEST)
+				return 0;
 		}
 		if (!the_index.untracked) {
 			uc = xcalloc(1, sizeof(*uc));
-- 
2.7.0.181.g07d31f8
Previous: Christian CouderNext: Christian Couder
Message 4 of 16 in “Untracked cache improvements”
  1. 00/11 Untracked cache improvementsChristian Couder, Jan 27, 2016
  2. 01/11 dir: free untracked cache when removing itChristian Couder, Jan 27, 2016
  3. 02/11 update-index: use enum for untracked cache optionsChristian Couder, Jan 27, 2016
  4. 03/11 update-index: add --test-untracked-cacheChristian Couder, Jan 27, 2016
  5. 04/11 update-index: add untracked cache notificationsChristian Couder, Jan 27, 2016
  6. Jeff KingMar 30, 2017
  7. Christian CouderMar 30, 2017
  8. Junio C HamanoMar 30, 2017
  9. Stefan BellerMar 30, 2017
  10. 05/11 update-index: move 'uc' var declarationChristian Couder, Jan 27, 2016
  11. 06/11 dir: add {new,add}_untracked_cache()Christian Couder, Jan 27, 2016
  12. 07/11 dir: add remove_untracked_cache()Christian Couder, Jan 27, 2016
  13. 08/11 dir: simplify untracked cache "ident" fieldChristian Couder, Jan 27, 2016
  14. 09/11 config: add core.untrackedCacheChristian Couder, Jan 27, 2016
  15. 10/11 test-dump-untracked-cache: don't modify the untracked cacheChristian Couder, Jan 27, 2016
  16. 11/11 t7063: add tests for core.untrackedCacheChristian Couder, Jan 27, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.