]> Kevux Git Server - rit/commit
merge,diff: remove the_repository check before prefetching blobs
authorElijah Newren <newren@gmail.com>
Sat, 21 Feb 2026 23:59:48 +0000 (23:59 +0000)
committerJunio C Hamano <gitster@pobox.com>
Sun, 22 Feb 2026 02:34:06 +0000 (18:34 -0800)
commit84325f0730801b7638f1152ea3553530452d5c3b
tree340e4eeff639f6fca397fd7a00ce84e8f5c505e2
parent73fd77805fc6406f31c36212846d9e2541d19321
merge,diff: remove the_repository check before prefetching blobs

Prefetching of blobs from promisor remotes was added to diff in
7fbbcb21b162 (diff: batch fetching of missing blobs, 2019-04-05).  In
that commit,

  https://lore.kernel.org/git/20190405170934.20441-1-jonathantanmy@google.com/

was squashed into

  https://lore.kernel.org/git/44de02e584f449481e6fb00cf35d74adf0192e9d.1553895166.git.jonathantanmy@google.com/

without the extra explanation about the squashed changes being added to
the commit message; in particular, this explanation from that first link
is absent:

> Also, prefetch only if the repository being diffed is the_repository
> (because we do not support lazy fetching for any other repository
>  anyway).

Then, later, this checking was spread from diff.c to diffcore-rename.c
and diffcore-break.c by 95acf11a3dc3 (diff: restrict when prefetching
occurs, 2020-04-07) and then further split in d331dd3b0c82
(diffcore-rename: allow different missing_object_cb functions,
2021-06-22).  I also copied the logic from prefetching blobs from
diff.c to merge-ort.c in 2bff554b23e8 (merge-ort: add prefetching for
content merges, 2021-06-22).

The reason for all these checks was noted above -- we only supported
lazy fetching for the_repository.  However, that changed with
ef830cc43412 (promisor-remote: teach lazy-fetch in any repo,
2021-06-17), so these checks are now unnecessary.  Remove them.

Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
diff.c
diffcore-break.c
diffcore-rename.c
merge-ort.c