about summary refs log tree commit diff
path: root/third_party/git/t/t3001-ls-files-others-exclude.sh
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/git/t/t3001-ls-files-others-exclude.sh')
-rwxr-xr-xthird_party/git/t/t3001-ls-files-others-exclude.sh301
1 files changed, 0 insertions, 301 deletions
diff --git a/third_party/git/t/t3001-ls-files-others-exclude.sh b/third_party/git/t/t3001-ls-files-others-exclude.sh
deleted file mode 100755
index 1ec7cb57c7..0000000000
--- a/third_party/git/t/t3001-ls-files-others-exclude.sh
+++ /dev/null
@@ -1,301 +0,0 @@
-#!/bin/sh
-#
-# Copyright (c) 2005 Junio C Hamano
-#
-
-test_description='git ls-files --others --exclude
-
-This test runs git ls-files --others and tests --exclude patterns.
-'
-
-. ./test-lib.sh
-
-rm -fr one three
-for dir in . one one/two three
-do
-  mkdir -p $dir &&
-  for i in 1 2 3 4 5 6 7 8
-  do
-    >$dir/a.$i
-  done
-done
->"#ignore1"
->"#ignore2"
->"#hidden"
-
-cat >expect <<EOF
-a.2
-a.4
-a.5
-a.8
-one/a.3
-one/a.4
-one/a.5
-one/a.7
-one/two/a.2
-one/two/a.3
-one/two/a.5
-one/two/a.7
-one/two/a.8
-three/a.2
-three/a.3
-three/a.4
-three/a.5
-three/a.8
-EOF
-
-echo '.gitignore
-\#ignore1
-\#ignore2*
-\#hid*n
-output
-expect
-.gitignore
-*.7
-!*.8' >.git/ignore
-
-echo '*.1
-/*.3
-!*.6' >.gitignore
-echo '*.2
-two/*.4
-!*.7
-*.8' >one/.gitignore
-echo '!*.2
-!*.8' >one/two/.gitignore
-
-allignores='.gitignore one/.gitignore one/two/.gitignore'
-
-test_expect_success \
-    'git ls-files --others with various exclude options.' \
-    'git ls-files --others \
-       --exclude=\*.6 \
-       --exclude-per-directory=.gitignore \
-       --exclude-from=.git/ignore \
-       >output &&
-     test_cmp expect output'
-
-# Test \r\n (MSDOS-like systems)
-printf '*.1\r\n/*.3\r\n!*.6\r\n' >.gitignore
-
-test_expect_success \
-    'git ls-files --others with \r\n line endings.' \
-    'git ls-files --others \
-       --exclude=\*.6 \
-       --exclude-per-directory=.gitignore \
-       --exclude-from=.git/ignore \
-       >output &&
-     test_cmp expect output'
-
-test_expect_success 'setup skip-worktree gitignore' '
-	git add $allignores &&
-	git update-index --skip-worktree $allignores &&
-	rm $allignores
-'
-
-test_expect_success \
-    'git ls-files --others with various exclude options.' \
-    'git ls-files --others \
-       --exclude=\*.6 \
-       --exclude-per-directory=.gitignore \
-       --exclude-from=.git/ignore \
-       >output &&
-     test_cmp expect output'
-
-test_expect_success 'restore gitignore' '
-	git checkout --ignore-skip-worktree-bits $allignores &&
-	rm .git/index
-'
-
-cat > excludes-file <<\EOF
-*.[1-8]
-e*
-\#*
-EOF
-
-git config core.excludesFile excludes-file
-
-git -c status.displayCommentPrefix=true status | grep "^#	" > output
-
-cat > expect << EOF
-#	.gitignore
-#	a.6
-#	one/
-#	output
-#	three/
-EOF
-
-test_expect_success 'git status honors core.excludesfile' \
-	'test_cmp expect output'
-
-test_expect_success 'trailing slash in exclude allows directory match(1)' '
-
-	git ls-files --others --exclude=one/ >output &&
-	if grep "^one/" output
-	then
-		echo Ooops
-		false
-	else
-		: happy
-	fi
-
-'
-
-test_expect_success 'trailing slash in exclude allows directory match (2)' '
-
-	git ls-files --others --exclude=one/two/ >output &&
-	if grep "^one/two/" output
-	then
-		echo Ooops
-		false
-	else
-		: happy
-	fi
-
-'
-
-test_expect_success 'trailing slash in exclude forces directory match (1)' '
-
-	>two &&
-	git ls-files --others --exclude=two/ >output &&
-	grep "^two" output
-
-'
-
-test_expect_success 'trailing slash in exclude forces directory match (2)' '
-
-	git ls-files --others --exclude=one/a.1/ >output &&
-	grep "^one/a.1" output
-
-'
-
-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_expect_success 'excluded directory overrides content patterns' '
-
-	git ls-files --others --exclude="one" --exclude="!one/a.1" >output &&
-	if grep "^one/a.1" output
-	then
-		false
-	fi
-'
-
-test_expect_success 'negated directory doesn'\''t affect content patterns' '
-
-	git ls-files --others --exclude="!one" --exclude="one/a.1" >output &&
-	if grep "^one/a.1" output
-	then
-		false
-	fi
-'
-
-test_expect_success 'subdirectory ignore (setup)' '
-	mkdir -p top/l1/l2 &&
-	(
-		cd top &&
-		git init &&
-		echo /.gitignore >.gitignore &&
-		echo l1 >>.gitignore &&
-		echo l2 >l1/.gitignore &&
-		>l1/l2/l1
-	)
-'
-
-test_expect_success 'subdirectory ignore (toplevel)' '
-	(
-		cd top &&
-		git ls-files -o --exclude-standard
-	) >actual &&
-	test_must_be_empty actual
-'
-
-test_expect_success 'subdirectory ignore (l1/l2)' '
-	(
-		cd top/l1/l2 &&
-		git ls-files -o --exclude-standard
-	) >actual &&
-	test_must_be_empty actual
-'
-
-test_expect_success 'subdirectory ignore (l1)' '
-	(
-		cd top/l1 &&
-		git ls-files -o --exclude-standard
-	) >actual &&
-	test_must_be_empty actual
-'
-
-test_expect_success 'show/hide empty ignored directory (setup)' '
-	rm top/l1/l2/l1 &&
-	rm top/l1/.gitignore
-'
-
-test_expect_success 'show empty ignored directory with --directory' '
-	(
-		cd top &&
-		git ls-files -o -i --exclude l1 --directory
-	) >actual &&
-	echo l1/ >expect &&
-	test_cmp expect actual
-'
-
-test_expect_success 'hide empty ignored directory with --no-empty-directory' '
-	(
-		cd top &&
-		git ls-files -o -i --exclude l1 --directory --no-empty-directory
-	) >actual &&
-	test_must_be_empty actual
-'
-
-test_expect_success 'show/hide empty ignored sub-directory (setup)' '
-	> top/l1/tracked &&
-	(
-		cd top &&
-		git add -f l1/tracked
-	)
-'
-
-test_expect_success 'show empty ignored sub-directory with --directory' '
-	(
-		cd top &&
-		git ls-files -o -i --exclude l1 --directory
-	) >actual &&
-	echo l1/l2/ >expect &&
-	test_cmp expect actual
-'
-
-test_expect_success 'hide empty ignored sub-directory with --no-empty-directory' '
-	(
-		cd top &&
-		git ls-files -o -i --exclude l1 --directory --no-empty-directory
-	) >actual &&
-	test_must_be_empty actual
-'
-
-test_expect_success 'pattern matches prefix completely' '
-	git ls-files -i -o --exclude "/three/a.3[abc]" >actual &&
-	test_must_be_empty actual
-'
-
-test_expect_success 'ls-files with "**" patterns' '
-	cat <<\EOF >expect &&
-a.1
-one/a.1
-one/two/a.1
-three/a.1
-EOF
-	git ls-files -o -i --exclude "**/a.1" >actual &&
-	test_cmp expect actual
-'
-
-
-test_expect_success 'ls-files with "**" patterns and no slashes' '
-	git ls-files -o -i --exclude "one**a.1" >actual &&
-	test_must_be_empty actual
-'
-
-test_done