summaryrefslogtreecommitdiff
path: root/t/t1011-read-tree-sparse-checkout.sh
diff options
context:
space:
mode:
authorNguyễn Thái Ngọc Duy <pclouds@gmail.com>2016-03-17 19:45:43 +0700
committerJunio C Hamano <gitster@pobox.com>2016-03-18 10:38:18 -0700
commit64c6969b2ff969019fb6e88bdee6973eafe42601 (patch)
treee5e7ffbb1df34ad304199ee050d5e2e091a76ad3 /t/t1011-read-tree-sparse-checkout.sh
parenta833971049dae060b3e19b142112b07b8ac5a027 (diff)
downloadgit-nd/exclusion-regression-fix.tar.gz
dir.c: correct "stuck" logging logicnd/exclusion-regression-fix
Before the last patch, the loop in last_exclude_matching_from_list() looks like this (greatly simplified of course) exc = NULL; for (...) { if (sticky_paths.nr) { if (matched) { exc = non-NULL; break; } continue; } ... } With this loop, if sticky_paths.nr is non-zero and exc is not NULL, we know we have found a sticky path and can log " (stuck)". With the last patch, the "continue;" line is removed and that won't work anymore. So explicitly keep track of when to print " (stuck)". Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t1011-read-tree-sparse-checkout.sh')
-rwxr-xr-xt/t1011-read-tree-sparse-checkout.sh8
1 files changed, 6 insertions, 2 deletions
diff --git a/t/t1011-read-tree-sparse-checkout.sh b/t/t1011-read-tree-sparse-checkout.sh
index ecc5e930ac..f0b856f14c 100755
--- a/t/t1011-read-tree-sparse-checkout.sh
+++ b/t/t1011-read-tree-sparse-checkout.sh
@@ -287,10 +287,14 @@ test_expect_success 'sparse checkout and dir.c sticky bits' '
!one/hideme
EOF
git config core.sparsecheckout true &&
- git checkout &&
+ GIT_TRACE_EXCLUDE=2 git checkout 2>&1 | grep stuck >stuck-list &&
test_path_is_missing one/hideme &&
test_path_is_file one/showme &&
- test_path_is_file two/showme
+ test_path_is_file two/showme &&
+ cat >expected <<-\EOF &&
+ exclude: one/showme vs /* at line 1 => yes (stuck)
+ EOF
+ test_cmp expected stuck-list
)
'