зеркало из https://github.com/microsoft/git.git
Add tests for wildcard "path vs ref" disambiguation
Commit 28fcc0b
(pathspec: avoid the need of "--" when wildcard is used -
2015-05-02) changes how the disambiguation rules work. This patch adds
some tests to demonstrate, basically, if wildcard characters are in an
argument:
- if the argument is valid extended sha-1 syntax, "--" must be used
- otherwise the argument is considered a path, even without "--"
And wildcard can appear in extended sha-1 syntax, either as part of
regex in ":/<regex>" or as the literal path in ":<path>". The latter
case is less likely to happen in real world. But if you do ":/" a lot,
you may need to type "--" more.
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
28fcc0b71a
Коммит
ae454f6125
|
@ -56,4 +56,30 @@ test_expect_success VAGUENESS_SUCCESS 'checkout reports switch to branch' '
|
||||||
test_i18ngrep ! "^HEAD is now at" stderr
|
test_i18ngrep ! "^HEAD is now at" stderr
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success 'wildcard ambiguation, paths win' '
|
||||||
|
git init ambi &&
|
||||||
|
(
|
||||||
|
cd ambi &&
|
||||||
|
echo a >a.c &&
|
||||||
|
git add a.c &&
|
||||||
|
echo b >a.c &&
|
||||||
|
git checkout "*.c" &&
|
||||||
|
echo a >expect &&
|
||||||
|
test_cmp expect a.c
|
||||||
|
)
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'wildcard ambiguation, refs lose' '
|
||||||
|
git init ambi2 &&
|
||||||
|
(
|
||||||
|
cd ambi2 &&
|
||||||
|
echo a >"*.c" &&
|
||||||
|
git add . &&
|
||||||
|
test_must_fail git show :"*.c" &&
|
||||||
|
git show :"*.c" -- >actual &&
|
||||||
|
echo a >expect &&
|
||||||
|
test_cmp expect actual
|
||||||
|
)
|
||||||
|
'
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
|
Загрузка…
Ссылка в новой задаче