t5303: Do not overwrite an existing pack
commit8054a9ec602701973ca4010b5d37d6ec1889ec86
authorJohannes Sixt <j6t@kdbg.org>
Mon, 17 Nov 2008 08:25:19 +0000 (17 09:25 +0100)
committerJohannes Sixt <j6t@kdbg.org>
Mon, 17 Nov 2008 08:25:19 +0000 (17 09:25 +0100)
tree003705bd74e837307bbcff4bf8bd19b51293d5cc
parent639583be9877f767dc63554666be3dfdadde2b51
t5303: Do not overwrite an existing pack

This test corrupts a pack file, then repacks the objects. The consequence
is that the repacked pack file has the same name as the original file
(that has been corrupted).

During its operation, git-pack-objects opens the corrupted file and keeps
it open at all times. On Windows, this is a problem because a file that is
open in any process cannot be delete or replaced, but that is what we do
in some of the test cases, and so they fail.

The work-around is to write the repacked objects to a file of a different
name, and replace the original after git-pack-objects has terminated.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
t/t5303-pack-corruption-resilience.sh