зеркало из https://github.com/microsoft/git.git
Merge branch 'ag/rev-parse-all-exclude-fix'
"git rev-parse --exclude=* --branches --branches" (i.e. first saying "add only things that do not match '*' out of all branches" and then adding all branches, without any exclusion this time") worked as expected, but "--exclude=* --all --all" did not work the same way, which has been fixed. * ag/rev-parse-all-exclude-fix: rev-parse: clear --exclude list after 'git rev-parse --all'
This commit is contained in:
Коммит
20d04b4419
|
@ -765,6 +765,7 @@ int cmd_rev_parse(int argc, const char **argv, const char *prefix)
|
|||
}
|
||||
if (!strcmp(arg, "--all")) {
|
||||
for_each_ref(show_reference, NULL);
|
||||
clear_ref_exclusion(&ref_excludes);
|
||||
continue;
|
||||
}
|
||||
if (skip_prefix(arg, "--disambiguate=", &arg)) {
|
||||
|
|
|
@ -141,6 +141,18 @@ test_expect_success 'rev-parse accumulates multiple --exclude' '
|
|||
compare rev-parse "--exclude=refs/remotes/* --exclude=refs/tags/* --all" --branches
|
||||
'
|
||||
|
||||
test_expect_success 'rev-parse --branches clears --exclude' '
|
||||
compare rev-parse "--exclude=* --branches --branches" "--branches"
|
||||
'
|
||||
|
||||
test_expect_success 'rev-parse --tags clears --exclude' '
|
||||
compare rev-parse "--exclude=* --tags --tags" "--tags"
|
||||
'
|
||||
|
||||
test_expect_success 'rev-parse --all clears --exclude' '
|
||||
compare rev-parse "--exclude=* --all --all" "--all"
|
||||
'
|
||||
|
||||
test_expect_success 'rev-list --glob=refs/heads/subspace/*' '
|
||||
|
||||
compare rev-list "subspace/one subspace/two" "--glob=refs/heads/subspace/*"
|
||||
|
|
Загрузка…
Ссылка в новой задаче