File tree Expand file tree Collapse file tree 1 file changed +13
-2
lines changed Expand file tree Collapse file tree 1 file changed +13
-2
lines changed Original file line number Diff line number Diff line change @@ -126,8 +126,18 @@ test_expect_success 'gc.recentObjectsHook' '
126126 git cat-file -p $obj2 &&
127127 git cat-file -p $obj3 &&
128128
129- git tag -a -m tag obj2-tag $obj2 &&
130- obj2_tag="$(git rev-parse obj2-tag)" &&
129+ # make an unreachable annotated tag object to ensure we rescue objects
130+ # which are reachable from non-pruned unreachable objects
131+ obj2_tag="$(git mktag <<-EOF
132+ object $obj2
133+ type blob
134+ tag obj2-tag
135+ tagger T A Gger <[email protected] > 1234567890 -0000 136+ EOF
137+ )" &&
138+
139+ obj2_tag_pack="$(echo $obj2_tag | git pack-objects .git/objects/pack/pack)" &&
140+ git prune-packed &&
131141
132142 write_script precious-objects <<-EOF &&
133143 echo $obj2_tag
@@ -136,6 +146,7 @@ test_expect_success 'gc.recentObjectsHook' '
136146
137147 test-tool chmtime =-86400 .git/objects/pack/pack-$pack2.pack &&
138148 test-tool chmtime =-86400 .git/objects/pack/pack-$pack3.pack &&
149+ test-tool chmtime =-86400 .git/objects/pack/pack-$obj2_tag_pack.pack &&
139150 git repack -A -d --unpack-unreachable=1.hour.ago &&
140151
141152 git cat-file -p $obj1 &&
You can’t perform that action at this time.
0 commit comments