--exclude-per-directory=.gitignore \
--exclude-from=.git/ignore \
>output &&
- git diff expect output'
+ test_cmp expect output'
# Test \r\n (MSDOS-like systems)
printf '*.1\r\n/*.3\r\n!*.6\r\n' >.gitignore
--exclude-per-directory=.gitignore \
--exclude-from=.git/ignore \
>output &&
- git diff expect output'
+ test_cmp expect output'
cat > excludes-file << EOF
*.[1-8]
# three/
EOF
-test_expect_success 'git-status honours core.excludesfile' \
- 'diff -u expect output'
+test_expect_success 'git status honors core.excludesfile' \
+ 'test_cmp expect output'
test_expect_success 'trailing slash in exclude allows directory match(1)' '
'
+test_expect_success 'negated exclude matches can override previous ones' '
+
+ git ls-files --others --exclude="a.*" --exclude="!a.1" >output &&
+ grep "^a.1" output
+'
+
test_done