diff options
author | Victoria Dye <vdye@github.com> | 2023-05-26 04:33:00 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2023-05-26 07:53:41 +0300 |
commit | 3867f6d650c89230ae7393e2d57160ccc14758c7 (patch) | |
tree | 967a2971733b17b584c01943116e39264203f38a /repository.c | |
parent | 9b6b06c159e0a389aaafbce91dd85bb5244ac5ad (diff) |
repository: move 'repository_format_worktree_config' to repo scope
Move 'repository_format_worktree_config' out of the global scope and into
the 'repository' struct. This change is similar to how
'repository_format_partial_clone' was moved in ebaf3bcf1ae (repository: move
global r_f_p_c to repo struct, 2021-06-17), adding it to the 'repository'
struct and updating 'setup.c' & 'repository.c' functions to assign the value
appropriately.
The primary goal of this change is to be able to load the worktree config of
a submodule depending on whether that submodule - not its superproject - has
'extensions.worktreeConfig' enabled. To ensure 'do_git_config_sequence()'
has access to the newly repo-scoped configuration, add a 'struct repository'
argument to 'do_git_config_sequence()' and pass it the 'repo' value from
'config_with_options()'.
Finally, add/update tests in 't3007-ls-files-recurse-submodules.sh' to
verify 'extensions.worktreeConfig' is read an used independently by
superprojects and submodules.
Signed-off-by: Victoria Dye <vdye@github.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'repository.c')
-rw-r--r-- | repository.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/repository.c b/repository.c index c53e480e32..104960f8f5 100644 --- a/repository.c +++ b/repository.c @@ -182,6 +182,7 @@ int repo_init(struct repository *repo, goto error; repo_set_hash_algo(repo, format.hash_algo); + repo->repository_format_worktree_config = format.worktree_config; /* take ownership of format.partial_clone */ repo->repository_format_partial_clone = format.partial_clone; |