On Fri, Jan 08 2021, Taylor Blau wrote: > For now, sprinkle these locations with a 'grep -v "\.rev$"' to ignore > them. Once the pack.writeReverseIndex option has been thoroughly > tested, we will default it to 'true', removing GIT_TEST_WRITE_REV_INDEX, > and making it possible to revert this patch. Maybe some of it we can change/revert, but some of it just seems to be test warts we can fix: > diff --git a/t/t5319-multi-pack-index.sh b/t/t5319-multi-pack-index.sh > index 297de502a9..9696f88c2f 100755 > --- a/t/t5319-multi-pack-index.sh > +++ b/t/t5319-multi-pack-index.sh > @@ -710,7 +710,7 @@ test_expect_success 'expire respects .keep files' ' > PACKA=$(ls .git/objects/pack/a-pack*\.pack | sed s/\.pack\$//) && > touch $PACKA.keep && > git multi-pack-index expire && > - ls -S .git/objects/pack/a-pack* | grep $PACKA >a-pack-files && > + ls -S .git/objects/pack/a-pack* | grep $PACKA | grep -v "\.rev$" >a-pack-files && This seems to be testing "a *.keep file made my pack not expire". Can't it just check for *.{pack,idx,keep} or even just *.pack? > test_line_count = 3 a-pack-files && > test-tool read-midx .git/objects | grep idx >midx-list && > test_line_count = 2 midx-list > diff --git a/t/t5325-reverse-index.sh b/t/t5325-reverse-index.sh > index 431699ade2..5a59cc71e4 100755 > --- a/t/t5325-reverse-index.sh > +++ b/t/t5325-reverse-index.sh > @@ -3,6 +3,10 @@ > test_description='on-disk reverse index' > . ./test-lib.sh > > +# The below tests want control over the 'pack.writeReverseIndex' setting > +# themselves to assert various combinations of it with other options. > +sane_unset GIT_TEST_WRITE_REV_INDEX > + > packdir=.git/objects/pack > > test_expect_success 'setup' ' > diff --git a/t/t5604-clone-reference.sh b/t/t5604-clone-reference.sh > index 2f7be23044..d064426d03 100755 > --- a/t/t5604-clone-reference.sh > +++ b/t/t5604-clone-reference.sh > @@ -318,7 +318,7 @@ test_expect_success SYMLINKS 'clone repo with symlinked or unknown files at obje > test_cmp T.objects T$option.objects && > ( > cd T$option/.git/objects && > - find . -type f | sort >../../../T$option.objects-files.raw && > + find . -type f | grep -v \.rev$ | sort >../../../T$option.objects-files.raw && > find . -type l | sort >../../../T$option.objects-symlinks.raw There's an existing loop just below that where we grep out /commit-graph/, /multi-pack-index/ etc. whith other test modes add to the objects directory with sed. Seems like this belongs there, not in the find above it. > ) > done && > diff --git a/t/t5702-protocol-v2.sh b/t/t5702-protocol-v2.sh > index 7d5b17909b..9ebf045739 100755 > --- a/t/t5702-protocol-v2.sh > +++ b/t/t5702-protocol-v2.sh > @@ -848,7 +848,7 @@ test_expect_success 'part of packfile response provided as URI' ' > test -f h2found && > > # Ensure that there are exactly 6 files (3 .pack and 3 .idx). > - ls http_child/.git/objects/pack/* >filelist && > + ls http_child/.git/objects/pack/* | grep -v \.rev$ >filelist && > test_line_count = 6 filelist > ' Maybe just check *.{pack,idx,keep}. I was looking at that code the other day and it's really just being overly specific. It really just cares about the *.pack files. > @@ -902,7 +902,7 @@ test_expect_success 'packfile-uri with transfer.fsckobjects' ' > clone "$HTTPD_URL/smart/http_parent" http_child && > > # Ensure that there are exactly 4 files (2 .pack and 2 .idx). > - ls http_child/.git/objects/pack/* >filelist && > + ls http_child/.git/objects/pack/* | grep -v \.rev$ >filelist && ditto. > test_line_count = 4 filelist > ' > > diff --git a/t/t6500-gc.sh b/t/t6500-gc.sh > index 4a3b8f48ac..d52f92f5a1 100755 > --- a/t/t6500-gc.sh > +++ b/t/t6500-gc.sh > @@ -106,13 +106,13 @@ test_expect_success 'auto gc with too many loose objects does not attempt to cre > test_commit "$(test_oid obj2)" && > # Our first gc will create a pack; our second will create a second pack > git gc --auto && > - ls .git/objects/pack | sort >existing_packs && > + ls .git/objects/pack | grep -v \.rev$ | sort >existing_packs && > test_commit "$(test_oid obj3)" && > test_commit "$(test_oid obj4)" && > > git gc --auto 2>err && > test_i18ngrep ! "^warning:" err && > - ls .git/objects/pack/ | sort >post_packs && > + ls .git/objects/pack/ | grep -v \.rev$ | sort >post_packs && > comm -1 -3 existing_packs post_packs >new && > comm -2 -3 existing_packs post_packs >del && > test_line_count = 0 del && # No packs are deleted This is all part of account where we later use comm/wc -l to check how many new packs we have,so just check *.pack? > diff --git a/t/t9300-fast-import.sh b/t/t9300-fast-import.sh > index 308c1ef42c..100df52a71 100755 > --- a/t/t9300-fast-import.sh > +++ b/t/t9300-fast-import.sh > @@ -1629,7 +1629,7 @@ test_expect_success 'O: blank lines not necessary after other commands' ' > INPUT_END > > git fast-import <input && > - test 8 = $(find .git/objects/pack -type f | grep -v multi-pack-index | wc -l) && > + test 8 = $(find .git/objects/pack -type f \( -name "*.idx" -o -name "*.pack" \) | wc -l) && Yay, there the existing multi-pack-index case is amended in a future-proof way :)