Allow passing of configuration parameters in the command line
The values passed this way will override whatever is defined in the config files. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
f1ba1c90e1
commit
8b1fa77867
9
git.c
9
git.c
@ -8,6 +8,7 @@ const char git_usage_string[] =
|
||||
"git [--version] [--exec-path[=GIT_EXEC_PATH]] [--html-path]\n"
|
||||
" [-p|--paginate|--no-pager] [--no-replace-objects]\n"
|
||||
" [--bare] [--git-dir=GIT_DIR] [--work-tree=GIT_WORK_TREE]\n"
|
||||
" [-c name=value\n"
|
||||
" [--help] COMMAND [ARGS]";
|
||||
|
||||
const char git_more_info_string[] =
|
||||
@ -130,6 +131,14 @@ static int handle_options(const char ***argv, int *argc, int *envchanged)
|
||||
setenv(GIT_DIR_ENVIRONMENT, getcwd(git_dir, sizeof(git_dir)), 0);
|
||||
if (envchanged)
|
||||
*envchanged = 1;
|
||||
} else if (!strcmp(cmd, "-c")) {
|
||||
if (*argc < 2) {
|
||||
fprintf(stderr, "-c expects a configuration string\n" );
|
||||
usage(git_usage_string);
|
||||
}
|
||||
git_config_parse_parameter((*argv)[1]);
|
||||
(*argv)++;
|
||||
(*argc)--;
|
||||
} else {
|
||||
fprintf(stderr, "Unknown option: %s\n", cmd);
|
||||
usage(git_usage_string);
|
||||
|
Reference in New Issue
Block a user