Merge branch 'sb/maint-1.6.0-add-config-fix'
* sb/maint-1.6.0-add-config-fix: add: allow configurations to be overriden by command line use xstrdup, not strdup in ll-merge.c Conflicts: builtin-add.c
This commit is contained in:
commit
09236d8048
@ -298,6 +298,8 @@ int cmd_add(int argc, const char **argv, const char *prefix)
|
|||||||
int add_new_files;
|
int add_new_files;
|
||||||
int require_pathspec;
|
int require_pathspec;
|
||||||
|
|
||||||
|
git_config(add_config, NULL);
|
||||||
|
|
||||||
argc = parse_options(argc, argv, prefix, builtin_add_options,
|
argc = parse_options(argc, argv, prefix, builtin_add_options,
|
||||||
builtin_add_usage, PARSE_OPT_KEEP_ARGV0);
|
builtin_add_usage, PARSE_OPT_KEEP_ARGV0);
|
||||||
if (patch_interactive)
|
if (patch_interactive)
|
||||||
@ -305,8 +307,6 @@ int cmd_add(int argc, const char **argv, const char *prefix)
|
|||||||
if (add_interactive)
|
if (add_interactive)
|
||||||
exit(interactive_add(argc - 1, argv + 1, prefix));
|
exit(interactive_add(argc - 1, argv + 1, prefix));
|
||||||
|
|
||||||
git_config(add_config, NULL);
|
|
||||||
|
|
||||||
if (edit_interactive)
|
if (edit_interactive)
|
||||||
return(edit_patch(argc, argv, prefix));
|
return(edit_patch(argc, argv, prefix));
|
||||||
argc--;
|
argc--;
|
||||||
|
@ -231,7 +231,7 @@ static int read_merge_config(const char *var, const char *value, void *cb)
|
|||||||
|
|
||||||
if (!strcmp(var, "merge.default")) {
|
if (!strcmp(var, "merge.default")) {
|
||||||
if (value)
|
if (value)
|
||||||
default_ll_merge = strdup(value);
|
default_ll_merge = xstrdup(value);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -265,7 +265,7 @@ static int read_merge_config(const char *var, const char *value, void *cb)
|
|||||||
if (!strcmp("name", ep)) {
|
if (!strcmp("name", ep)) {
|
||||||
if (!value)
|
if (!value)
|
||||||
return error("%s: lacks value", var);
|
return error("%s: lacks value", var);
|
||||||
fn->description = strdup(value);
|
fn->description = xstrdup(value);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -288,14 +288,14 @@ static int read_merge_config(const char *var, const char *value, void *cb)
|
|||||||
* file named by %A, and signal that it has done with zero exit
|
* file named by %A, and signal that it has done with zero exit
|
||||||
* status.
|
* status.
|
||||||
*/
|
*/
|
||||||
fn->cmdline = strdup(value);
|
fn->cmdline = xstrdup(value);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!strcmp("recursive", ep)) {
|
if (!strcmp("recursive", ep)) {
|
||||||
if (!value)
|
if (!value)
|
||||||
return error("%s: lacks value", var);
|
return error("%s: lacks value", var);
|
||||||
fn->recursive = strdup(value);
|
fn->recursive = xstrdup(value);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -221,6 +221,19 @@ test_expect_success POSIXPERM 'git add (add.ignore-errors = false)' '
|
|||||||
test_must_fail git add --verbose . &&
|
test_must_fail git add --verbose . &&
|
||||||
! ( git ls-files foo1 | grep foo1 )
|
! ( git ls-files foo1 | grep foo1 )
|
||||||
'
|
'
|
||||||
|
rm -f foo2
|
||||||
|
|
||||||
|
test_expect_success '--no-ignore-errors overrides config' '
|
||||||
|
git config add.ignore-errors 1 &&
|
||||||
|
git reset --hard &&
|
||||||
|
date >foo1 &&
|
||||||
|
date >foo2 &&
|
||||||
|
chmod 0 foo2 &&
|
||||||
|
test_must_fail git add --verbose --no-ignore-errors . &&
|
||||||
|
! ( git ls-files foo1 | grep foo1 ) &&
|
||||||
|
git config add.ignore-errors 0
|
||||||
|
'
|
||||||
|
rm -f foo2
|
||||||
|
|
||||||
test_expect_success BSLASHPSPEC "git add 'fo\\[ou\\]bar' ignores foobar" '
|
test_expect_success BSLASHPSPEC "git add 'fo\\[ou\\]bar' ignores foobar" '
|
||||||
git reset --hard &&
|
git reset --hard &&
|
||||||
|
Loading…
Reference in New Issue
Block a user