1
0
Fork 0
mirror of https://github.com/git/git.git synced 2024-05-09 20:46:09 +02:00

Merge branch 'xx/disable-replace-when-building-midx' into jch

The procedure to build multi-pack-index got confused by the
replace-refs mechanism, which has been corrected by disabling the
latter.

* xx/disable-replace-when-building-midx:
  midx: disable replace objects
This commit is contained in:
Junio C Hamano 2024-04-26 09:22:42 -07:00
commit 9b135aad0e
2 changed files with 24 additions and 0 deletions

View File

@ -8,6 +8,7 @@
#include "strbuf.h"
#include "trace2.h"
#include "object-store-ll.h"
#include "replace-object.h"
#define BUILTIN_MIDX_WRITE_USAGE \
N_("git multi-pack-index [<options>] write [--preferred-pack=<pack>]" \
@ -273,6 +274,8 @@ int cmd_multi_pack_index(int argc, const char **argv,
};
struct option *options = parse_options_concat(builtin_multi_pack_index_options, common_opts);
disable_replace_refs();
git_config(git_default_config, NULL);
if (the_repository &&

View File

@ -434,6 +434,27 @@ test_expect_success 'tagged commits are selected for bitmapping' '
)
'
test_expect_success 'do not follow replace objects for MIDX bitmap' '
rm -fr repo &&
git init repo &&
test_when_finished "rm -fr repo" &&
(
cd repo &&
test_commit A &&
test_commit B &&
git checkout --orphan=orphan A &&
test_commit orphan &&
git replace A HEAD &&
git repack -ad --write-midx --write-bitmap-index &&
# generating reachability bitmaps with replace refs
# enabled will result in broken clones
git clone --no-local --bare . clone.git
)
'
corrupt_file () {
chmod a+w "$1" &&
printf "bogus" | dd of="$1" bs=1 seek="12" conv=notrunc