Re: PATCH/RFC] allow delta data reuse even if base object is a preferred base
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:42:42
Nicolas Pitre [off-list ref] writes:
quoted hunk
Signed-off-by: Nicolas Pitre <redacted> --- Any reason why this couldn't be done? When I reworked that code I preserved the existing logic wrt preferred base. However I could not find a reason why it was that way. Hence this patch.diff --git a/builtin-pack-objects.c b/builtin-pack-objects.c index 6db97b6..ee5f031 100644 --- a/builtin-pack-objects.c +++ b/builtin-pack-objects.c@@ -989,7 +988,7 @@ static void check_object(struct object_e unuse_packed_git(p); entry->in_pack_header_size = used; - if (base_entry && !base_entry->preferred_base) { + if (base_entry) { /* Depth value does not matter - find_deltas() * will never consider reused delta as the
I was wondering about it myself the other day because I do not remember the reasoning why I thought we do not want to reuse the delta when the base object is not part of the resulting pack. We would recompute and create the delta ourselves anyway if we do not take this branch, so it is not about avoiding to delta it. I really do not see the reason now; I think it is safe and reasonable to remove the check.