mirror of
https://github.com/git/git
synced 2024-10-28 19:25:47 +00:00
1cf9952db2
ls-tree uses read_tree_recursive() which already does path filtering using pathspec. No need to filter one more time based on prefix only. "ls-tree ../somewhere" does not work because of this. write_name_quotedpfx() can now be retired because nobody else uses it. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
30 lines
673 B
Bash
Executable file
30 lines
673 B
Bash
Executable file
#!/bin/sh
|
|
|
|
test_description='ls-tree with(out) globs'
|
|
|
|
. ./test-lib.sh
|
|
|
|
test_expect_success 'setup' '
|
|
mkdir a aa "a[a]" &&
|
|
touch a/one aa/two "a[a]/three" &&
|
|
git add a/one aa/two "a[a]/three" &&
|
|
git commit -m test
|
|
'
|
|
|
|
test_expect_success 'ls-tree a[a] matches literally' '
|
|
cat >expected <<EOF &&
|
|
100644 blob e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 a[a]/three
|
|
EOF
|
|
git ls-tree -r HEAD "a[a]" >actual &&
|
|
test_cmp expected actual
|
|
'
|
|
|
|
test_expect_success 'ls-tree outside prefix' '
|
|
cat >expected <<EOF &&
|
|
100644 blob e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 ../a[a]/three
|
|
EOF
|
|
( cd aa && git ls-tree -r HEAD "../a[a]"; ) >actual &&
|
|
test_cmp expected actual
|
|
'
|
|
|
|
test_done
|