From: Junio C Hamano Date: Wed, 15 Nov 2006 06:18:31 +0000 (-0800) Subject: pack-objects: tweak "do not even attempt delta" heuristics X-Git-Tag: v1.5.0-rc0~231^2 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=e9195b584f6ad49b637b56be0705a7362a95d692;p=git.git pack-objects: tweak "do not even attempt delta" heuristics The heuristics to give up deltification when both the source and the target are both in the same pack affects negatively when we are repacking the subset of objects in the existing pack. This caused any incremental updates to use suboptimal packs. Tweak the heuristics to avoid this problem. Signed-off-by: Junio C Hamano --- diff --git a/builtin-pack-objects.c b/builtin-pack-objects.c index 69e5dd39c..753bcd57b 100644 --- a/builtin-pack-objects.c +++ b/builtin-pack-objects.c @@ -1176,7 +1176,9 @@ static int try_delta(struct unpacked *trg, struct unpacked *src, * on an earlier try, but only when reusing delta data. */ if (!no_reuse_delta && trg_entry->in_pack && - trg_entry->in_pack == src_entry->in_pack) + trg_entry->in_pack == src_entry->in_pack && + trg_entry->in_pack_type != OBJ_REF_DELTA && + trg_entry->in_pack_type != OBJ_OFS_DELTA) return 0; /*