Commit graph

16 commits

Author SHA1 Message Date
Waleed Khan
56c61fd047 merge_tools: create builtin diff editor 2023-08-30 05:38:10 -04:00
Waleed Khan
ccd67e8156 merge_tools: rename MergeTool::Internal -> MergeTool::Builtin
The name we will expose to the user is `builtin`, so this changes the internal messaging to match that.
2023-08-30 04:10:39 -04:00
Martin von Zweigbergk
67832a3940 merged_tree: take store argument to write_tree() instead of new()
The store isn't needed until we write the trees, so I think it makes
more sense to pass it there.
2023-08-29 08:32:04 -07:00
Martin von Zweigbergk
6df7db3dc0 merge_tools: pass MergedTree to run_mergetool() 2023-08-27 07:35:01 -07:00
Martin von Zweigbergk
17fe5e39c5 merge_tools: pass MergedTrees to edit_diff() 2023-08-27 07:35:01 -07:00
Martin von Zweigbergk
54b9ecce68 merge_tools: pass MergeTree to run_mergetool_external() 2023-08-27 07:35:01 -07:00
Martin von Zweigbergk
88e9933462 working_copy: enable storing multiple tree ids in state file 2023-08-27 06:49:45 -07:00
Martin von Zweigbergk
f877610792 merge: add Merge::num_sides()
An alternative name for it would be `arity()`, but `num_sides()`
probably more clearly says that it's not about the number of removes
or the total number of terms.
2023-08-25 08:54:49 -07:00
Martin von Zweigbergk
23509e939e working_copy: get diff from MergedTrees
To support tree-level conflicts, we're going to need to update the
working copy from one `MergedTree` to another. We're going need to
store multiple tree ids in the `tree_state` file. This patch gets us
closer to that by getting the diff from `MergedTree`s`, even though we
assume that they are legacy trees for now, so we can write to the
single-tree `tree_state` file.
2023-08-25 06:40:36 -07:00
Zachary Dremann
1221e306a1 Make find_all_variables lazy, and not allocate
There's no need for it to allocate the variable names, and the only place it's
currently used can benefit from returning early if `$output` is found
2023-08-22 13:15:56 -04:00
Ilya Grigoriev
038867fd3f merge_tools: Allow 3-pane diff editing
As discussed in https://github.com/martinvonz/jj/discussions/1905#discussioncomment-6589673
2023-08-21 20:19:15 -07:00
Ilya Grigoriev
ccd4f8e159 merge_tools: function to extract all variables from tool arguments
To be used in the next commit
2023-08-21 20:19:15 -07:00
Ben Saunders
351e7feef5 working_copy: don't snapshot new files larger than 1MiB by default 2023-08-17 19:29:38 -07:00
Waleed Khan
9ea9c068ed merge_tools: move symbols to external.rs 2023-08-14 00:02:11 -04:00
Waleed Khan
b837e88757 merge_tools: extract external merge tool functions 2023-08-13 16:51:42 -04:00
Waleed Khan
4bb40bbf10 merge_tools: create merge_tools directory
The intention is to put the internal and external merge tool implementations in different files.
2023-08-13 16:21:05 -04:00