Add a config option to ignore errors for git-add
Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
8959743645
commit
dad25e4a7c
@ -206,6 +206,15 @@ static struct option builtin_add_options[] = {
|
||||
OPT_END(),
|
||||
};
|
||||
|
||||
static int add_config(const char *var, const char *value)
|
||||
{
|
||||
if (!strcasecmp(var, "add.ignore-errors")) {
|
||||
ignore_add_errors = git_config_bool(var, value);
|
||||
return 0;
|
||||
}
|
||||
return git_default_config(var, value);
|
||||
}
|
||||
|
||||
int cmd_add(int argc, const char **argv, const char *prefix)
|
||||
{
|
||||
int exit_status = 0;
|
||||
@ -220,7 +229,7 @@ int cmd_add(int argc, const char **argv, const char *prefix)
|
||||
if (add_interactive)
|
||||
exit(interactive_add(argc, argv, prefix));
|
||||
|
||||
git_config(git_default_config);
|
||||
git_config(add_config);
|
||||
|
||||
newfd = hold_locked_index(&lock_file, 1);
|
||||
|
||||
|
@ -201,4 +201,25 @@ test_expect_success 'git add --ignore-errors' '
|
||||
|
||||
rm -f foo2
|
||||
|
||||
test_expect_success 'git add (add.ignore-errors)' '
|
||||
git config add.ignore-errors 1 &&
|
||||
git reset --hard &&
|
||||
date >foo1 &&
|
||||
date >foo2 &&
|
||||
chmod 0 foo2 &&
|
||||
test_must_fail git add --verbose . &&
|
||||
git ls-files foo1 | grep foo1
|
||||
'
|
||||
rm -f foo2
|
||||
|
||||
test_expect_success 'git add (add.ignore-errors = false)' '
|
||||
git config add.ignore-errors 0 &&
|
||||
git reset --hard &&
|
||||
date >foo1 &&
|
||||
date >foo2 &&
|
||||
chmod 0 foo2 &&
|
||||
test_must_fail git add --verbose . &&
|
||||
! ( git ls-files foo1 | grep foo1 )
|
||||
'
|
||||
|
||||
test_done
|
||||
|
Loading…
Reference in New Issue
Block a user