2010-03-01 11:12:31 +08:00
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
test_description='giving ignored paths to git add'
|
|
|
|
|
2021-10-31 06:24:20 +08:00
|
|
|
TEST_PASSES_SANITIZE_LEAK=true
|
2010-03-01 11:12:31 +08:00
|
|
|
. ./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 &&
|
2018-08-20 05:57:22 +08:00
|
|
|
test_must_be_empty out
|
2011-02-23 07:41:30 +08:00
|
|
|
'
|
|
|
|
|
2011-04-13 07:20:32 +08:00
|
|
|
test_expect_success "complaints for ignored $i output" '
|
2023-10-31 13:23:30 +08:00
|
|
|
test_grep -e "Use -f if" err
|
2010-03-01 11:12:31 +08:00
|
|
|
'
|
|
|
|
|
|
|
|
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 &&
|
2018-08-20 05:57:22 +08:00
|
|
|
test_must_be_empty out
|
2011-02-23 07:41:30 +08:00
|
|
|
'
|
2011-04-13 07:20:32 +08:00
|
|
|
test_expect_success "complaints for ignored $i with unignored file output" '
|
2023-10-31 13:23:30 +08:00
|
|
|
test_grep -e "Use -f if" err
|
2010-03-01 11:12:31 +08:00
|
|
|
'
|
|
|
|
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 &&
|
2018-08-20 05:57:22 +08:00
|
|
|
test_must_be_empty out
|
2011-02-23 07:41:30 +08:00
|
|
|
)
|
|
|
|
'
|
|
|
|
|
2011-04-13 07:20:32 +08:00
|
|
|
test_expect_success "complaints for ignored $i in dir output" '
|
2011-02-23 07:41:30 +08:00
|
|
|
(
|
|
|
|
cd dir &&
|
2023-10-31 13:23:30 +08:00
|
|
|
test_grep -e "Use -f if" err
|
2010-03-01 11:12:31 +08:00
|
|
|
)
|
|
|
|
'
|
|
|
|
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 &&
|
2018-08-20 05:57:22 +08:00
|
|
|
test_must_be_empty out
|
2011-02-23 07:41:30 +08:00
|
|
|
)
|
|
|
|
'
|
|
|
|
|
2011-04-13 07:20:32 +08:00
|
|
|
test_expect_success "complaints for ignored $i in sub output" '
|
2011-02-23 07:41:30 +08:00
|
|
|
(
|
|
|
|
cd sub &&
|
2023-10-31 13:23:30 +08:00
|
|
|
test_grep -e "Use -f if" err
|
2010-03-01 11:12:31 +08:00
|
|
|
)
|
|
|
|
'
|
|
|
|
done
|
|
|
|
|
|
|
|
test_done
|