mirror of
https://github.com/git/git.git
synced 2024-11-23 18:05:29 +08:00
80 lines
1.4 KiB
Bash
80 lines
1.4 KiB
Bash
|
#!/bin/sh
|
||
|
|
||
|
test_description='giving ignored paths to git add'
|
||
|
|
||
|
. ./test-lib.sh
|
||
|
|
||
|
test_expect_success setup '
|
||
|
mkdir sub dir dir/sub &&
|
||
|
echo sub >.gitignore &&
|
||
|
echo ign >>.gitignore &&
|
||
|
for p in . sub dir dir/sub
|
||
|
do
|
||
|
>"$p/ign" &&
|
||
|
>"$p/file" || exit 1
|
||
|
done
|
||
|
'
|
||
|
|
||
|
for i in file dir/file dir 'd*'
|
||
|
do
|
||
|
test_expect_success "no complaints for unignored $i" '
|
||
|
rm -f .git/index &&
|
||
|
git add "$i" &&
|
||
|
git ls-files "$i" >out &&
|
||
|
test -s out
|
||
|
'
|
||
|
done
|
||
|
|
||
|
for i in ign dir/ign dir/sub dir/sub/*ign sub/file sub sub/*
|
||
|
do
|
||
|
test_expect_success "complaints for ignored $i" '
|
||
|
rm -f .git/index &&
|
||
|
test_must_fail git add "$i" 2>err &&
|
||
|
git ls-files "$i" >out &&
|
||
|
! test -s out &&
|
||
|
grep -e "Use -f if" err &&
|
||
|
cat err
|
||
|
'
|
||
|
|
||
|
test_expect_success "complaints for ignored $i with unignored file" '
|
||
|
rm -f .git/index &&
|
||
|
test_must_fail git add "$i" file 2>err &&
|
||
|
git ls-files "$i" >out &&
|
||
|
! test -s out &&
|
||
|
grep -e "Use -f if" err &&
|
||
|
cat err
|
||
|
'
|
||
|
done
|
||
|
|
||
|
for i in sub sub/*
|
||
|
do
|
||
|
test_expect_success "complaints for ignored $i in dir" '
|
||
|
rm -f .git/index &&
|
||
|
(
|
||
|
cd dir &&
|
||
|
test_must_fail git add "$i" 2>err &&
|
||
|
git ls-files "$i" >out &&
|
||
|
! test -s out &&
|
||
|
grep -e "Use -f if" err &&
|
||
|
cat err
|
||
|
)
|
||
|
'
|
||
|
done
|
||
|
|
||
|
for i in ign file
|
||
|
do
|
||
|
test_expect_success "complaints for ignored $i in sub" '
|
||
|
rm -f .git/index &&
|
||
|
(
|
||
|
cd sub &&
|
||
|
test_must_fail git add "$i" 2>err &&
|
||
|
git ls-files "$i" >out &&
|
||
|
! test -s out &&
|
||
|
grep -e "Use -f if" err &&
|
||
|
cat err
|
||
|
)
|
||
|
'
|
||
|
done
|
||
|
|
||
|
test_done
|