libgit2 / libgit2

A cross-platform, linkable library implementation of Git that you can use in your application.
https://libgit2.org/
Other
9.59k stars 2.4k forks source link

support git 2.29's `commit-graph` path-based Bloom Filters #5758

Open lhchavez opened 3 years ago

lhchavez commented 3 years ago

This depends on #5757

Git 2.29 added an extension for commit-graph files such that they also contain a bloom filter to track modified paths in commits, which can make the implementation of path-based revwalks easier AND faster.

Once some of the changes in #5757 land, this work can start. Some of the tasks involved:

Relevant documentation:

sgorilla commented 5 months ago

@lhchavez I see the #5757 issue was not finished, though it seems like it got very close. I am quite interested in this functionality (and especially the fast single file commit lookup by path) for our project. Was there a blocker that made this whole thing non-viable or is it potentially close to being achievable?