Browse Source

submodule: remove gitmodules_config

Now that the submodule-config subsystem can lazily read the gitmodules
file we no longer need to explicitly pre-read the gitmodules by calling
'gitmodules_config()' so let's remove it.

Signed-off-by: Brandon Williams <bmwill@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Brandon Williams 8 years ago committed by Junio C Hamano
parent
commit
557a5998df
  1. 1
      builtin/checkout.c
  2. 1
      builtin/commit.c
  3. 1
      builtin/diff-files.c
  4. 1
      builtin/diff-index.c
  5. 1
      builtin/diff-tree.c
  6. 2
      builtin/diff.c
  7. 4
      builtin/fetch.c
  8. 4
      builtin/grep.c
  9. 1
      builtin/mv.c
  10. 2
      builtin/read-tree.c
  11. 2
      builtin/reset.c
  12. 1
      builtin/rm.c
  13. 14
      builtin/submodule--helper.c
  14. 15
      submodule.c
  15. 2
      submodule.h
  16. 1
      t/helper/test-submodule-config.c

1
builtin/checkout.c

@ -1179,7 +1179,6 @@ int cmd_checkout(int argc, const char **argv, const char *prefix) @@ -1179,7 +1179,6 @@ int cmd_checkout(int argc, const char **argv, const char *prefix)
opts.prefix = prefix;
opts.show_progress = -1;

gitmodules_config();
git_config(git_checkout_config, &opts);

opts.track = BRANCH_TRACK_UNSPECIFIED;

1
builtin/commit.c

@ -195,7 +195,6 @@ static void determine_whence(struct wt_status *s) @@ -195,7 +195,6 @@ static void determine_whence(struct wt_status *s)
static void status_init_config(struct wt_status *s, config_fn_t fn)
{
wt_status_prepare(s);
gitmodules_config();
git_config(fn, s);
determine_whence(s);
init_diff_ui_defaults();

1
builtin/diff-files.c

@ -26,7 +26,6 @@ int cmd_diff_files(int argc, const char **argv, const char *prefix) @@ -26,7 +26,6 @@ int cmd_diff_files(int argc, const char **argv, const char *prefix)

git_config(git_diff_basic_config, NULL); /* no "diff" UI options */
init_revisions(&rev, prefix);
gitmodules_config();
rev.abbrev = 0;
precompose_argv(argc, argv);


1
builtin/diff-index.c

@ -23,7 +23,6 @@ int cmd_diff_index(int argc, const char **argv, const char *prefix) @@ -23,7 +23,6 @@ int cmd_diff_index(int argc, const char **argv, const char *prefix)

git_config(git_diff_basic_config, NULL); /* no "diff" UI options */
init_revisions(&rev, prefix);
gitmodules_config();
rev.abbrev = 0;
precompose_argv(argc, argv);


1
builtin/diff-tree.c

@ -110,7 +110,6 @@ int cmd_diff_tree(int argc, const char **argv, const char *prefix) @@ -110,7 +110,6 @@ int cmd_diff_tree(int argc, const char **argv, const char *prefix)

git_config(git_diff_basic_config, NULL); /* no "diff" UI options */
init_revisions(opt, prefix);
gitmodules_config();
opt->abbrev = 0;
opt->diff = 1;
opt->disable_stdin = 1;

2
builtin/diff.c

@ -315,8 +315,6 @@ int cmd_diff(int argc, const char **argv, const char *prefix) @@ -315,8 +315,6 @@ int cmd_diff(int argc, const char **argv, const char *prefix)
no_index = DIFF_NO_INDEX_IMPLICIT;
}

if (!no_index)
gitmodules_config();
init_diff_ui_defaults();
git_config(git_diff_ui_config, NULL);
precompose_argv(argc, argv);

4
builtin/fetch.c

@ -1360,10 +1360,6 @@ int cmd_fetch(int argc, const char **argv, const char *prefix) @@ -1360,10 +1360,6 @@ int cmd_fetch(int argc, const char **argv, const char *prefix)
if (depth || deepen_since || deepen_not.nr)
deepen = 1;

if (recurse_submodules != RECURSE_SUBMODULES_OFF) {
gitmodules_config();
}

if (all) {
if (argc == 1)
die(_("fetch --all does not take a repository argument"));

4
builtin/grep.c

@ -1048,10 +1048,6 @@ int cmd_grep(int argc, const char **argv, const char *prefix) @@ -1048,10 +1048,6 @@ int cmd_grep(int argc, const char **argv, const char *prefix)
}
#endif

if (recurse_submodules) {
gitmodules_config();
}

if (show_in_pager && (cached || list.nr))
die(_("--open-files-in-pager only works on the worktree"));


1
builtin/mv.c

@ -131,7 +131,6 @@ int cmd_mv(int argc, const char **argv, const char *prefix) @@ -131,7 +131,6 @@ int cmd_mv(int argc, const char **argv, const char *prefix)
struct stat st;
struct string_list src_for_dst = STRING_LIST_INIT_NODUP;

gitmodules_config();
git_config(git_default_config, NULL);

argc = parse_options(argc, argv, prefix, builtin_mv_options,

2
builtin/read-tree.c

@ -164,8 +164,6 @@ int cmd_read_tree(int argc, const char **argv, const char *unused_prefix) @@ -164,8 +164,6 @@ int cmd_read_tree(int argc, const char **argv, const char *unused_prefix)
argc = parse_options(argc, argv, unused_prefix, read_tree_options,
read_tree_usage, 0);

load_submodule_cache();

hold_locked_index(&lock_file, LOCK_DIE_ON_ERROR);

prefix_set = opts.prefix ? 1 : 0;

2
builtin/reset.c

@ -309,8 +309,6 @@ int cmd_reset(int argc, const char **argv, const char *prefix) @@ -309,8 +309,6 @@ int cmd_reset(int argc, const char **argv, const char *prefix)
PARSE_OPT_KEEP_DASHDASH);
parse_args(&pathspec, argv, prefix, patch_mode, &rev);

load_submodule_cache();

unborn = !strcmp(rev, "HEAD") && get_oid("HEAD", &oid);
if (unborn) {
/* reset on unborn branch: treat as reset to empty tree */

1
builtin/rm.c

@ -255,7 +255,6 @@ int cmd_rm(int argc, const char **argv, const char *prefix) @@ -255,7 +255,6 @@ int cmd_rm(int argc, const char **argv, const char *prefix)
struct pathspec pathspec;
char *seen;

gitmodules_config();
git_config(git_default_config, NULL);

argc = parse_options(argc, argv, prefix, builtin_rm_options,

14
builtin/submodule--helper.c

@ -275,8 +275,6 @@ static void module_list_active(struct module_list *list) @@ -275,8 +275,6 @@ static void module_list_active(struct module_list *list)
int i;
struct module_list active_modules = MODULE_LIST_INIT;

gitmodules_config();

for (i = 0; i < list->nr; i++) {
const struct cache_entry *ce = list->entries[i];

@ -337,9 +335,6 @@ static void init_submodule(const char *path, const char *prefix, int quiet) @@ -337,9 +335,6 @@ static void init_submodule(const char *path, const char *prefix, int quiet)
struct strbuf sb = STRBUF_INIT;
char *upd = NULL, *url = NULL, *displaypath;

/* Only loads from .gitmodules, no overlay with .git/config */
gitmodules_config();

if (prefix && get_super_prefix())
die("BUG: cannot have prefix and superprefix");
else if (prefix)
@ -475,7 +470,6 @@ static int module_name(int argc, const char **argv, const char *prefix) @@ -475,7 +470,6 @@ static int module_name(int argc, const char **argv, const char *prefix)
if (argc != 2)
usage(_("git submodule--helper name <path>"));

gitmodules_config();
sub = submodule_from_path(&null_oid, argv[1]);

if (!sub)
@ -1042,8 +1036,6 @@ static int update_clone(int argc, const char **argv, const char *prefix) @@ -1042,8 +1036,6 @@ static int update_clone(int argc, const char **argv, const char *prefix)
if (pathspec.nr)
suc.warn_if_uninitialized = 1;

gitmodules_config();

run_processes_parallel(max_jobs,
update_clone_get_next_task,
update_clone_start_failure,
@ -1084,8 +1076,6 @@ static const char *remote_submodule_branch(const char *path) @@ -1084,8 +1076,6 @@ static const char *remote_submodule_branch(const char *path)
const char *branch = NULL;
char *key;

gitmodules_config();

sub = submodule_from_path(&null_oid, path);
if (!sub)
return NULL;
@ -1204,8 +1194,6 @@ static int absorb_git_dirs(int argc, const char **argv, const char *prefix) @@ -1204,8 +1194,6 @@ static int absorb_git_dirs(int argc, const char **argv, const char *prefix)
argc = parse_options(argc, argv, prefix, embed_gitdir_options,
git_submodule_helper_usage, 0);

gitmodules_config();

if (module_list_compute(argc, argv, prefix, &pathspec, &list) < 0)
return 1;

@ -1221,8 +1209,6 @@ static int is_active(int argc, const char **argv, const char *prefix) @@ -1221,8 +1209,6 @@ static int is_active(int argc, const char **argv, const char *prefix)
if (argc != 2)
die("submodule--helper is-active takes exactly 1 argument");

gitmodules_config();

return !is_submodule_active(the_repository, argv[1]);
}


15
submodule.c

@ -208,19 +208,6 @@ int option_parse_recurse_submodules_worktree_updater(const struct option *opt, @@ -208,19 +208,6 @@ int option_parse_recurse_submodules_worktree_updater(const struct option *opt,
return 0;
}

void load_submodule_cache(void)
{
if (config_update_recurse_submodules == RECURSE_SUBMODULES_OFF)
return;

gitmodules_config();
}

void gitmodules_config(void)
{
repo_read_gitmodules(the_repository);
}

/*
* Determine if a submodule has been initialized at a given 'path'
*/
@ -1093,7 +1080,6 @@ int submodule_touches_in_range(struct object_id *excl_oid, @@ -1093,7 +1080,6 @@ int submodule_touches_in_range(struct object_id *excl_oid,
struct argv_array args = ARGV_ARRAY_INIT;
int ret;

gitmodules_config();
/* No need to check if there are no submodules configured */
if (!submodule_from_path(NULL, NULL))
return 0;
@ -2000,7 +1986,6 @@ int submodule_to_gitdir(struct strbuf *buf, const char *submodule) @@ -2000,7 +1986,6 @@ int submodule_to_gitdir(struct strbuf *buf, const char *submodule)
strbuf_addstr(buf, git_dir);
}
if (!is_git_directory(buf->buf)) {
gitmodules_config();
sub = submodule_from_path(&null_oid, submodule);
if (!sub) {
ret = -1;

2
submodule.h

@ -45,8 +45,6 @@ extern int git_default_submodule_config(const char *var, const char *value, void @@ -45,8 +45,6 @@ extern int git_default_submodule_config(const char *var, const char *value, void
struct option;
int option_parse_recurse_submodules_worktree_updater(const struct option *opt,
const char *arg, int unset);
void load_submodule_cache(void);
extern void gitmodules_config(void);
extern int is_submodule_active(struct repository *repo, const char *path);
/*
* Determine if a submodule has been populated at a given 'path' by checking if

1
t/helper/test-submodule-config.c

@ -32,7 +32,6 @@ int cmd_main(int argc, const char **argv) @@ -32,7 +32,6 @@ int cmd_main(int argc, const char **argv)
die_usage(argc, argv, "Wrong number of arguments.");

setup_git_directory();
gitmodules_config();

while (*arg) {
struct object_id commit_oid;

Loading…
Cancel
Save