Jeff King <peff@xxxxxxxx> writes: > On Sun, Dec 22, 2019 at 10:26:20AM +0100, Christian Couder wrote: > >> I have a question though. Are the performance gains only available >> with `git log -- path` or are they already available for example when >> doing a partial clone and/or a sparse checkout? > > From my quick look at the code, anything that feeds a pathspec to a > revision traversal would be helped. I'm not sure if it would help for > partial/sparse traversals, though. There we actually need to know which > blobs correspond to the paths in question, not just whether any > particular commit touched them. > > I also took a brief look at adding support to the custom blame-tree > implementation we use at GitHub, and got about a 6x speedup. Is there any chance of upstreaming the blame-tree algorithm, perhaps as a separate mode for git-blame (invoked with `git blame <directory>`? Or is the algorithm too GitHub-specific? Best, -- Jakub Narębski