aboutsummaryrefslogtreecommitdiffstats
path: root/config.h
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2024-09-23 10:35:04 -0700
committerJunio C Hamano <gitster@pobox.com>2024-09-23 10:35:05 -0700
commit3eb66799593f3676d85ca66f9e3192a7db603805 (patch)
treea381a41f1696931f064f41ae256f284fd70fc221 /config.h
parentSync with Git 2.46.2 (diff)
parentenvironment: stop storing "core.notesRef" globally (diff)
downloadgit-3eb66799593f3676d85ca66f9e3192a7db603805.tar.gz
git-3eb66799593f3676d85ca66f9e3192a7db603805.zip
Merge branch 'ps/environ-wo-the-repository'
Code clean-up. * ps/environ-wo-the-repository: (21 commits) environment: stop storing "core.notesRef" globally environment: stop storing "core.warnAmbiguousRefs" globally environment: stop storing "core.preferSymlinkRefs" globally environment: stop storing "core.logAllRefUpdates" globally refs: stop modifying global `log_all_ref_updates` variable branch: stop modifying `log_all_ref_updates` variable repo-settings: track defaults close to `struct repo_settings` repo-settings: split out declarations into a standalone header environment: guard state depending on a repository environment: reorder header to split out `the_repository`-free section environment: move `set_git_dir()` and related into setup layer environment: make `get_git_namespace()` self-contained environment: move object database functions into object layer config: make dependency on repo in `read_early_config()` explicit config: document `read_early_config()` and `read_very_early_config()` environment: make `get_git_work_tree()` accept a repository environment: make `get_graft_file()` accept a repository environment: make `get_index_file()` accept a repository environment: make `get_object_directory()` accept a repository environment: make `get_git_common_dir()` accept a repository ...
Diffstat (limited to 'config.h')
-rw-r--r--config.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/config.h b/config.h
index d0497157c5..5c730c4f89 100644
--- a/config.h
+++ b/config.h
@@ -192,7 +192,18 @@ int git_config_from_blob_oid(config_fn_t fn, const char *name,
void git_config_push_parameter(const char *text);
void git_config_push_env(const char *spec);
int git_config_from_parameters(config_fn_t fn, void *data);
-void read_early_config(config_fn_t cb, void *data);
+
+/*
+ * Read config when the Git directory has not yet been set up. In case
+ * `the_repository` has not yet been set up, try to discover the Git
+ * directory to read the configuration from.
+ */
+void read_early_config(struct repository *repo, config_fn_t cb, void *data);
+
+/*
+ * Read config but only enumerate system and global settings.
+ * Omit any repo-local, worktree-local, or command-line settings.
+ */
void read_very_early_config(config_fn_t cb, void *data);
/**