Merge branch 'jk/midx-write-v1-by-default'
As writing version 2 MIDX files by default breaks older versions of Git and its reimplementations, use V2 only when necessary. * jk/midx-write-v1-by-default: MIDX: revert the default version to v1
This commit is contained in:
commit
e60b8306f1
3 files changed
+7
-2
No files matched your search
@@ -98,6 +98,9 @@ compact::
|
||||
--[no-]bitmap::
|
||||
Control whether or not a multi-pack bitmap is written.
|
||||
--
|
||||
+
|
||||
Note that the compact command requires writing a version-2 midx that
|
||||
cannot be read by versions of Git prior to v2.54.
|
||||
|
||||
verify::
|
||||
Verify the contents of the MIDX file.
|
||||
|
||||
+3
-1
@@ -1259,7 +1259,6 @@ static int write_midx_internal(struct write_midx_opts *opts)
|
||||
struct tempfile *incr;
|
||||
struct write_midx_context ctx = {
|
||||
.preferred_pack_idx = NO_PREFERRED_PACK,
|
||||
.version = MIDX_VERSION_V2,
|
||||
};
|
||||
struct multi_pack_index *midx_to_free = NULL;
|
||||
int bitmapped_packs_concat_len = 0;
|
||||
@@ -1275,6 +1274,9 @@ static int write_midx_internal(struct write_midx_opts *opts)
|
||||
ctx.repo = r;
|
||||
ctx.source = opts->source;
|
||||
|
||||
ctx.version = ((opts->flags & MIDX_WRITE_COMPACT)
|
||||
? MIDX_VERSION_V2
|
||||
: MIDX_VERSION_V1);
|
||||
repo_config_get_int(ctx.repo, "midx.version", &ctx.version);
|
||||
if (ctx.version != MIDX_VERSION_V1 && ctx.version != MIDX_VERSION_V2)
|
||||
die(_("unknown MIDX version: %d"), ctx.version);
|
||||
|
||||
@@ -21,7 +21,7 @@ midx_read_expect () {
|
||||
EXTRA_CHUNKS="$5"
|
||||
{
|
||||
cat <<-EOF &&
|
||||
header: 4d494458 2 $HASH_LEN $NUM_CHUNKS $NUM_PACKS
|
||||
header: 4d494458 1 $HASH_LEN $NUM_CHUNKS $NUM_PACKS
|
||||
chunks: pack-names oid-fanout oid-lookup object-offsets$EXTRA_CHUNKS
|
||||
num_objects: $NUM_OBJECTS
|
||||
packs:
|
||||
|
||||
Reference in new issue
Block a user