In a similar fashion as previous commits, adjust the fast-import tests to prepare for "git gc" generating a cruft pack by default. This adjustment is slightly different, however. Instead of relying on us writing out the objects loose, and then calling `git prune` to remove them, t9300 needs to be prepared to drop objects that would be moved into cruft packs. To do this, we can combine the `git gc` invocation with `git prune` into one `git gc --prune`, which handles pruning both loose objects, and objects that would otherwise be written to a cruft pack. Likely this pattern of "git gc && git prune" started all the way back in 03db4525d3 (Support gitlinks in fast-import., 2008-07-19), which happened after deprecating `git gc --prune` in 9e7d501990 (builtin-gc.c: deprecate --prune, it now really has no effect, 2008-05-09). After `--prune` was un-deprecated in 58e9d9d472 (gc: make --prune useful again by accepting an optional parameter, 2009-02-14), this script got a handful of new "git gc && git prune" instances via via 4cedb78cb5 (fast-import: add input format tests, 2011-08-11). These could have been `git gc --prune`, but weren't (likely taking after 03db4525d3). Signed-off-by: Taylor Blau <me@xxxxxxxxxxxx> --- t/t9300-fast-import.sh | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/t/t9300-fast-import.sh b/t/t9300-fast-import.sh index aa55b41b9a..ac237a1f90 100755 --- a/t/t9300-fast-import.sh +++ b/t/t9300-fast-import.sh @@ -388,9 +388,7 @@ test_expect_success 'B: accept branch name "TEMP_TAG"' ' INPUT_END - test_when_finished "rm -f .git/TEMP_TAG - git gc - git prune" && + test_when_finished "rm -f .git/TEMP_TAG && git gc --prune=now" && git fast-import <input && test $(test-tool ref-store main resolve-ref TEMP_TAG 0 | cut -f1 -d " " ) != "$ZERO_OID" && test $(git rev-parse main) = $(git rev-parse TEMP_TAG^) @@ -406,8 +404,7 @@ test_expect_success 'B: accept empty committer' ' INPUT_END test_when_finished "git update-ref -d refs/heads/empty-committer-1 - git gc - git prune" && + git gc --prune=now" && git fast-import <input && out=$(git fsck) && echo "$out" && @@ -452,8 +449,7 @@ test_expect_success 'B: accept and fixup committer with no name' ' INPUT_END test_when_finished "git update-ref -d refs/heads/empty-committer-2 - git gc - git prune" && + git gc --prune=now" && git fast-import <input && out=$(git fsck) && echo "$out" && @@ -1778,8 +1774,7 @@ test_expect_success 'P: verbatim SHA gitlinks' ' INPUT_END git branch -D sub && - git gc && - git prune && + git gc --prune=now && git fast-import <input && test $(git rev-parse --verify subuse2) = $(git rev-parse --verify subuse1) ' -- 2.40.0.362.gc67ee7c2ff