sequencer: switch non-recursive merges over to ort

The do_recursive_merge() function, which is somewhat misleadingly named
since its purpose in life is to do a *non*-recursive merge, had code to
allow either using the recursive or ort backends.  The default has been
ort for a very long time, let's just remove the code path for allowing
the recursive backend to be selected.

Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
main
Elijah Newren 2025-04-08 15:48:38 +00:00 committed by Junio C Hamano
parent 2e806d8464
commit f7ca9bbea6
1 changed files with 13 additions and 22 deletions

View File

@ -781,28 +781,19 @@ static int do_recursive_merge(struct repository *r,
for (i = 0; i < opts->xopts.nr; i++) for (i = 0; i < opts->xopts.nr; i++)
parse_merge_opt(&o, opts->xopts.v[i]); parse_merge_opt(&o, opts->xopts.v[i]);


if (!opts->strategy || !strcmp(opts->strategy, "ort")) { memset(&result, 0, sizeof(result));
memset(&result, 0, sizeof(result)); merge_incore_nonrecursive(&o, base_tree, head_tree, next_tree, &result);
merge_incore_nonrecursive(&o, base_tree, head_tree, next_tree, show_output = !is_rebase_i(opts) || !result.clean;
&result); /*
show_output = !is_rebase_i(opts) || !result.clean; * TODO: merge_switch_to_result will update index/working tree;
/* * we only really want to do that if !result.clean || this is
* TODO: merge_switch_to_result will update index/working tree; * the final patch to be picked. But determining this is the
* we only really want to do that if !result.clean || this is * final patch would take some work, and "head_tree" would need
* the final patch to be picked. But determining this is the * to be replace with the tree the index matched before we
* final patch would take some work, and "head_tree" would need * started doing any picks.
* to be replace with the tree the index matched before we */
* started doing any picks. merge_switch_to_result(&o, head_tree, &result, 1, show_output);
*/ clean = result.clean;
merge_switch_to_result(&o, head_tree, &result, 1, show_output);
clean = result.clean;
} else {
ensure_full_index(r->index);
clean = merge_trees(&o, head_tree, next_tree, base_tree);
if (is_rebase_i(opts) && clean <= 0)
fputs(o.obuf.buf, stdout);
strbuf_release(&o.obuf);
}
if (clean < 0) { if (clean < 0) {
rollback_lock_file(&index_lock); rollback_lock_file(&index_lock);
return clean; return clean;