[PATCH 3/4] t5304: Ensure wanted files are not deleted
- From
Doug Kelly <dougk.ff7@gmail.com>
- Date
- Jan 13, 2016, 17:07 UTC
- Message-ID
- <670a9d9268beb0d70fb877a7c62d769062babba9.1452704305.git.dougk.ff7@gmail.com>
- In-Reply-To
- <cover.1452704305.git.dougk.ff7@gmail.com>
Explicitly test for and ensure files that may be wanted are not deleted during a gc operation. These include .pack without .idx (which may be in-flight), garbage in the directory, and .keep files the user created.
Signed-off-by: Doug Kelly <dougk.ff7@gmail.com> --- t/t5304-prune.sh | 17 +++++++++++++++++ 1 file changed, 17 insertions(+)
diff --git a/t/t5304-prune.sh b/t/t5304-prune.sh index 4fa6e7a..f7c380c 100755 --- a/t/t5304-prune.sh +++ b/t/t5304-prune.sh @@ -285,6 +285,23 @@ EOF test_cmp expected actual ' +test_expect_success 'ensure unknown garbage kept with gc' ' + test_when_finished "rm -f .git/objects/pack/fake*" && + test_when_finished "rm -f .git/objects/pack/foo*" && + : >.git/objects/pack/foo.keep && + : >.git/objects/pack/fake.pack && + : >.git/objects/pack/fake2.foo && + git gc && + git count-objects -v 2>stderr && + grep "^warning:" stderr | sort >actual && + cat >expected <<\EOF && +warning: garbage found: .git/objects/pack/fake2.foo +warning: no corresponding .idx or .pack: .git/objects/pack/foo.keep +warning: no corresponding .idx: .git/objects/pack/fake.pack +EOF + test_cmp expected actual +' + test_expect_success 'prune .git/shallow' ' SHA1=`echo hi|git commit-tree HEAD^{tree}` && echo $SHA1 >.git/shallow &&
-- 2.6.1