diff options
Diffstat (limited to 'third_party/git/t/t2202-add-addremove.sh')
-rwxr-xr-x | third_party/git/t/t2202-add-addremove.sh | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/third_party/git/t/t2202-add-addremove.sh b/third_party/git/t/t2202-add-addremove.sh new file mode 100755 index 000000000000..9ee659098c45 --- /dev/null +++ b/third_party/git/t/t2202-add-addremove.sh @@ -0,0 +1,54 @@ +#!/bin/sh + +test_description='git add --all' + +. ./test-lib.sh + +test_expect_success setup ' + ( + echo .gitignore && + echo will-remove + ) >expect && + ( + echo actual && + echo expect && + echo ignored + ) >.gitignore && + git --literal-pathspecs add --all && + >will-remove && + git add --all && + test_tick && + git commit -m initial && + git ls-files >actual && + test_cmp expect actual +' + +test_expect_success 'git add --all' ' + ( + echo .gitignore && + echo not-ignored && + echo "M .gitignore" && + echo "A not-ignored" && + echo "D will-remove" + ) >expect && + >ignored && + >not-ignored && + echo modification >>.gitignore && + rm -f will-remove && + git add --all && + git update-index --refresh && + git ls-files >actual && + git diff-index --name-status --cached HEAD >>actual && + test_cmp expect actual +' + +test_expect_success 'Just "git add" is a no-op' ' + git reset --hard && + echo >will-remove && + >will-not-be-added && + git add && + git diff-index --name-status --cached HEAD >actual && + test_must_be_empty actual +' + +test_done |