зеркало из https://github.com/microsoft/git.git
config: clarify meaning of command line scoping
CONFIG_SCOPE_CMDLINE is generally used in the code to refer to config values passed in via the -c option. Options passed in using this mechanism share similar scoping characteristics with the --file and --blob options of the 'config' command, namely that they are only in use for that single invocation of git, and that they supersede the normal system/global/local hierarchy. This patch introduces CONFIG_SCOPE_COMMAND to reflect this new idea, which also makes CONFIG_SCOPE_CMDLINE redundant. Signed-off-by: Matthew Rogers <mattr94@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
6dc905d974
Коммит
6766e41b8a
6
config.c
6
config.c
|
@ -1737,7 +1737,7 @@ static int do_git_config_sequence(const struct config_options *opts,
|
||||||
free(path);
|
free(path);
|
||||||
}
|
}
|
||||||
|
|
||||||
current_parsing_scope = CONFIG_SCOPE_CMDLINE;
|
current_parsing_scope = CONFIG_SCOPE_COMMAND;
|
||||||
if (!opts->ignore_cmdline && git_config_from_parameters(fn, data) < 0)
|
if (!opts->ignore_cmdline && git_config_from_parameters(fn, data) < 0)
|
||||||
die(_("unable to parse command-line config"));
|
die(_("unable to parse command-line config"));
|
||||||
|
|
||||||
|
@ -3305,8 +3305,8 @@ const char *config_scope_name(enum config_scope scope)
|
||||||
return "local";
|
return "local";
|
||||||
case CONFIG_SCOPE_WORKTREE:
|
case CONFIG_SCOPE_WORKTREE:
|
||||||
return "worktree";
|
return "worktree";
|
||||||
case CONFIG_SCOPE_CMDLINE:
|
case CONFIG_SCOPE_COMMAND:
|
||||||
return "cmdline";
|
return "command";
|
||||||
default:
|
default:
|
||||||
return "unknown";
|
return "unknown";
|
||||||
}
|
}
|
||||||
|
|
2
config.h
2
config.h
|
@ -300,7 +300,7 @@ enum config_scope {
|
||||||
CONFIG_SCOPE_GLOBAL,
|
CONFIG_SCOPE_GLOBAL,
|
||||||
CONFIG_SCOPE_LOCAL,
|
CONFIG_SCOPE_LOCAL,
|
||||||
CONFIG_SCOPE_WORKTREE,
|
CONFIG_SCOPE_WORKTREE,
|
||||||
CONFIG_SCOPE_CMDLINE,
|
CONFIG_SCOPE_COMMAND,
|
||||||
};
|
};
|
||||||
const char *config_scope_name(enum config_scope scope);
|
const char *config_scope_name(enum config_scope scope);
|
||||||
|
|
||||||
|
|
|
@ -265,7 +265,7 @@ test_expect_success 'iteration shows correct origins' '
|
||||||
value=from-cmdline
|
value=from-cmdline
|
||||||
origin=command line
|
origin=command line
|
||||||
name=
|
name=
|
||||||
scope=cmdline
|
scope=command
|
||||||
EOF
|
EOF
|
||||||
GIT_CONFIG_PARAMETERS=$cmdline_config test-tool config iterate >actual &&
|
GIT_CONFIG_PARAMETERS=$cmdline_config test-tool config iterate >actual &&
|
||||||
test_cmp expect actual
|
test_cmp expect actual
|
||||||
|
|
Загрузка…
Ссылка в новой задаче