Browse Source

git-repack.sh: don't use --kept-pack-only option to pack-objects

The --kept-pack-only option to pack-objects treats all kept packs as equal.
This results in objects that reside in an alternate pack that has a .keep
file, not being packed into a newly created pack when the user specifies the
-a option to repack.  Since the user may not have any control over the
alternate database, git should not refrain from repacking those objects
even though they are in a pack with a .keep file.

This fixes the 'packed obs in alternate ODB kept pack are repacked' test in
t7700.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Brandon Casey 16 years ago committed by Junio C Hamano
parent
commit
171110a4a6
  1. 6
      git-repack.sh
  2. 2
      t/t7700-repack.sh

6
git-repack.sh

@ -71,11 +71,7 @@ case ",$all_into_one," in
existing="$existing $e" existing="$existing $e"
fi fi
done done
if test -n "$existing" if test -n "$existing" -a -n "$unpack_unreachable" -a \
then
args="--kept-pack-only"
fi
if test -n "$args" -a -n "$unpack_unreachable" -a \
-n "$remove_redundant" -n "$remove_redundant"
then then
args="$args $unpack_unreachable" args="$args $unpack_unreachable"

2
t/t7700-repack.sh

@ -69,7 +69,7 @@ test_expect_success 'packed obs in alt ODB are repacked even when local repo is
done done
' '


test_expect_failure 'packed obs in alternate ODB kept pack are repacked' ' test_expect_success 'packed obs in alternate ODB kept pack are repacked' '
# swap the .keep so the commit object is in the pack with .keep # swap the .keep so the commit object is in the pack with .keep
for p in alt_objects/pack/*.pack for p in alt_objects/pack/*.pack
do do

Loading…
Cancel
Save