summaryrefslogtreecommitdiff
path: root/repo-settings.c
diff options
context:
space:
mode:
authorDerrick Stolee <dstolee@microsoft.com>2019-08-13 18:37:47 (GMT)
committerJunio C Hamano <gitster@pobox.com>2019-08-13 20:33:55 (GMT)
commitc6cc4c5afd2efd5f8081a3839b48d003de4e094f (patch)
tree8f6c9d525ea3db9dde80f98f383397ab23386165 /repo-settings.c
parentad0fb65999382052cf21408df490d0b39800d487 (diff)
downloadgit-c6cc4c5afd2efd5f8081a3839b48d003de4e094f.zip
git-c6cc4c5afd2efd5f8081a3839b48d003de4e094f.tar.gz
git-c6cc4c5afd2efd5f8081a3839b48d003de4e094f.tar.bz2
repo-settings: create feature.manyFiles setting
The feature.manyFiles setting is suitable for repos with many files in the working directory. By setting index.version=4 and core.untrackedCache=true, commands such as 'git status' should improve. While adding this setting, modify the index version precedence tests to check how this setting overrides the default for index.version is unset. Signed-off-by: Derrick Stolee <dstolee@microsoft.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'repo-settings.c')
-rw-r--r--repo-settings.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/repo-settings.c b/repo-settings.c
index abbc656..d5bf906 100644
--- a/repo-settings.c
+++ b/repo-settings.c
@@ -36,9 +36,12 @@ void prepare_repo_settings(struct repository *r)
free(strval);
}
-
if (!repo_config_get_bool(r, "pack.usesparse", &value))
r->settings.pack_use_sparse = value;
+ if (!repo_config_get_bool(r, "feature.manyfiles", &value) && value) {
+ UPDATE_DEFAULT_BOOL(r->settings.index_version, 4);
+ UPDATE_DEFAULT_BOOL(r->settings.core_untracked_cache, UNTRACKED_CACHE_WRITE);
+ }
/* Hack for test programs like test-dump-untracked-cache */
if (ignore_untracked_cache_config)