mirror of
https://github.com/martinvonz/jj.git
synced 2025-01-28 15:26:25 +00:00
39b065f7ab
For loose refs, uninteresting directories can be just skipped. For packed refs, gix will have to do binary search for each prefix to find the starting point. Still it's better overall if the repository contains tons of refs/jj/keep refs. With my linux repo containing ~5k loose jj refs, this saves ~40ms: % hyperfine --warmup 3 --runs 10 \ "/tmp/jj-gix --ignore-working-copy git import -R ~/mirrors/linux" \ "/tmp/jj-gix-iter --ignore-working-copy git import -R ~/mirrors/linux" Benchmark 1: /tmp/jj-gix --ignore-working-copy git import -R ~/mirrors/linux Time (mean ± σ): 151.6 ms ± 11.4 ms [User: 38.8 ms, System: 111.6 ms] Range (min … max): 129.8 ms … 159.5 ms 10 runs Benchmark 2: /tmp/jj-gix-iter --ignore-working-copy git import -R ~/mirrors/linux Time (mean ± σ): 109.9 ms ± 11.6 ms [User: 27.5 ms, System: 82.4 ms] Range (min … max): 89.4 ms … 117.8 ms 10 runs |
||
---|---|---|
.. | ||
benches | ||
gen-protos | ||
src | ||
tests | ||
testutils | ||
Cargo.toml | ||
LICENSE |