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

[PATCH v5 06/22] update-index: warn in case of split-index incoherency

From
Christian Couder <christian.couder@gmail.com>
Date
Mar 6, 2017, 09:41 UTC
Message-ID
<20170306094203.28250-7-chriscool@tuxfamily.org>
In-Reply-To
<20170306094203.28250-1-chriscool@tuxfamily.org>

When users are using `git update-index --(no-)split-index`, they may expect the split-index feature to be used or not according to the option they just used, but this might not be the case if the new "core.splitIndex" config variable has been set. In this case let's warn about what will happen and why.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
---
 builtin/update-index.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/builtin/update-index.c b/builtin/update-index.c
index 24fdadfa4b..d74d72cc7f 100644
--- a/builtin/update-index.c
+++ b/builtin/update-index.c
@@ -1099,12 +1099,21 @@ int cmd_update_index(int argc, const char **argv, const char *prefix)
 	}
 
 	if (split_index > 0) {
+		if (git_config_get_split_index() == 0)
+			warning(_("core.splitIndex is set to false; "
+				  "remove or change it, if you really want to "
+				  "enable split index"));
 		if (the_index.split_index)
 			the_index.cache_changed |= SPLIT_INDEX_ORDERED;
 		else
 			add_split_index(&the_index);
-	} else if (!split_index)
+	} else if (!split_index) {
+		if (git_config_get_split_index() == 1)
+			warning(_("core.splitIndex is set to true; "
+				  "remove or change it, if you really want to "
+				  "disable split index"));
 		remove_split_index(&the_index);
+	}
 
 	switch (untracked_cache) {
 	case UC_UNSPECIFIED:
-- 
2.12.0.206.g74921e51d6.dirty
Previous: Christian CouderNext: Christian Couder
Message 11 of 23 in “Add configuration options for split-index”
  1. 00/22 Add configuration options for split-indexChristian Couder, Mar 6, 2017
  2. 11/22 read-cache: regenerate shared index if necessaryChristian Couder, Mar 6, 2017
  3. 17/22 read-cache: unlink old sharedindex filesChristian Couder, Mar 6, 2017
  4. 09/22 Documentation/git-update-index: talk about core.splitIndex config varChristian Couder, Mar 6, 2017
  5. 22/22 Documentation/git-update-index: explain splitIndex.*Christian Couder, Mar 6, 2017
  6. 14/22 sha1_file: make check_and_freshen_file() non staticChristian Couder, Mar 6, 2017
  7. 20/22 read-cache: use freshen_shared_index() in read_index_from()Christian Couder, Mar 6, 2017
  8. 19/22 read-cache: refactor read_index_from()Christian Couder, Mar 6, 2017
  9. 13/22 Documentation/config: add splitIndex.maxPercentChangeChristian Couder, Mar 6, 2017
  10. 10/22 config: add git_config_get_max_percent_split_change()Christian Couder, Mar 6, 2017
  11. 06/22 update-index: warn in case of split-index incoherencyChristian Couder, Mar 6, 2017
  12. 18/22 t1700: test shared index file expirationChristian Couder, Mar 6, 2017
  13. 15/22 read-cache: touch shared index files when usedChristian Couder, Mar 6, 2017
  14. 07/22 t1700: add tests for core.splitIndexChristian Couder, Mar 6, 2017
  15. 16/22 config: add git_config_get_expiry() from gc.cChristian Couder, Mar 6, 2017
  16. 12/22 t1700: add tests for splitIndex.maxPercentChangeChristian Couder, Mar 6, 2017
  17. 04/22 split-index: add {add,remove}_split_index() functionsChristian Couder, Mar 6, 2017
  18. 21/22 Documentation/config: add splitIndex.sharedIndexExpireChristian Couder, Mar 6, 2017
  19. 02/22 t1700: change here document styleChristian Couder, Mar 6, 2017
  20. 08/22 Documentation/config: add information for core.splitIndexChristian Couder, Mar 6, 2017
  21. 05/22 read-cache: add and then use tweak_split_index()Christian Couder, Mar 6, 2017
  22. 01/22 config: mark an error message up for translationChristian Couder, Mar 6, 2017
  23. 03/22 config: add git_config_get_split_index()Christian Couder, Mar 6, 2017

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.