On Mon, Aug 26, 2024 at 7:28 PM Junio C Hamano <gitster@xxxxxxxxx> wrote: > > > Unlike the diff machinery, blame does not have a prefetch machinery. > I am glad that somebody is looking at it. I'm not convinced I'm looking at it in a very useful way from your perspective: My C skills being spectacularly lacking for fixing the core code, I am just writing an external python-based wrapper for "my" users. I will try to "productize" it sufficiently to send here in case it's useful to someone, but all I can really offer the community-at-large is confirmation that in principle, the approach works as you would expect: With some small number of jit-fetches for rename-detection during the revision walk(s), and with one blob-prefetch call afterwards, "git blame" can be made to run cleanly/quickly in a "filter:none" clone even on a file like "git.c", with hundreds of revisions.