jj/lib/src
Martin von Zweigbergk 62ce5782b5 index: when writing incremental index, squash into parent file if smaller
We currently write a new incremental index file every time. That means
that the stack of index files quickly gets deep, which makes it slow
to read the index. This commit makes it so that we squash the new
index segment into its parent if the parent has fewer commits. That
means we'll limit the number of files to O(log n). Writes time will
also be O(log n) on average.
2021-02-16 23:47:43 -08:00
..
commit.rs git: extract function for pushing commit to remote branch, and test it 2020-12-28 00:53:41 -08:00
commit_builder.rs
conflicts.rs conflicts: add another helper for writing materialized conflict to store 2020-12-26 00:35:45 -08:00
dag_walk.rs index: keep up to date within transaction 2021-02-14 00:58:11 -08:00
evolution.rs view: replace View trait by enum with Readonly and Mutable variants 2021-02-13 08:31:41 -08:00
files.rs merge: rewrite code for 3-way merge of files to handle not just trivial cases 2021-01-22 11:41:50 -08:00
git.rs transaction: add accessors for view and evolution directly on transaction 2021-02-13 13:43:48 -08:00
git_store.rs git: add a ref to each commit we create 2021-02-13 08:16:18 -08:00
index.rs index: when writing incremental index, squash into parent file if smaller 2021-02-16 23:47:43 -08:00
lib.rs git: extract function for pushing commit to remote branch, and test it 2020-12-28 00:53:41 -08:00
local_store.rs git: return a new repo instance from the store instead of the store's instance 2020-12-28 23:38:20 -08:00
lock.rs lock: use exponential backoff 2020-12-25 15:08:49 -08:00
matchers.rs
op_store.rs view: add tracking of "public" heads (copying Mercurial's phase concept) 2021-01-16 11:48:35 -08:00
operation.rs
protos.rs protobuf: generate code at build-time 2020-12-24 01:05:17 -08:00
repo.rs transaction: write incremental index on commit 2021-02-15 11:03:41 -08:00
repo_path.rs
rewrite.rs
settings.rs
simple_op_store.rs view: add tracking of "public" heads (copying Mercurial's phase concept) 2021-01-16 11:48:35 -08:00
store.rs git: return a new repo instance from the store instead of the store's instance 2020-12-28 23:38:20 -08:00
store_wrapper.rs git: return a new repo instance from the store instead of the store's instance 2020-12-28 23:38:20 -08:00
testutils.rs init: add support for creating new repo backed by bare git repo in .jj/git/ 2020-12-28 00:54:03 -08:00
transaction.rs transaction: write incremental index on commit 2021-02-15 11:03:41 -08:00
tree.rs
tree_builder.rs
trees.rs commands: add an interactive mode for jj restore 2020-12-26 01:16:19 -08:00
view.rs view: replace View trait by enum with Readonly and Mutable variants 2021-02-13 08:31:41 -08:00
working_copy.rs working_copy: preserve executable bit on Windows 2021-02-07 00:50:21 -08:00