mirror of
https://github.com/martinvonz/jj.git
synced 2025-01-18 18:27:38 +00:00
27a7fccefa
One of the remaining places we depend on index positions is when creating a `ChangeIdIndex`. This moves that into the revset engine (which is coupled to the commit index implementation) by adding a `Revset::change_id_index()` method. We will also use this function later when add support for resolving change id prefixes within a small revset. The current implementation simply creates an in-memory index using the existing `IdIndex` we have in `repo.rs`. The custom implementation at Google might do the same for small revsets that are available on the client, but for revsets involving many commits on the server, it might use a suboptimmal implementation that uses longer-than-necessary prefixes for performance reasons. That can be done by querying a server-side index including changes not in the revset, and then verifying that the resulting commits are actually in the revset. |
||
---|---|---|
.. | ||
gen-protos | ||
src | ||
tests | ||
testutils | ||
build.rs | ||
Cargo.toml |