Merge branch 'en/merge-recursive-debug'

Remove remnants of the recursive merge strategy backend, which was
superseded by the ort merge strategy.

* en/merge-recursive-debug:
  builtin/{merge,rebase,revert}: remove GIT_TEST_MERGE_ALGORITHM
  tests: remove GIT_TEST_MERGE_ALGORITHM and test_expect_merge_algorithm
  merge-recursive.[ch]: thoroughly debug these
  merge, sequencer: switch recursive merges over to ort
  sequencer: switch non-recursive merges over to ort
  merge-ort: enable diff-algorithms other than histogram
  builtin/merge-recursive: switch to using merge_ort_generic()
  checkout: replace merge_trees() with merge_ort_nonrecursive()
This commit is contained in:
Junio C Hamano
2025-04-17 10:28:18 -07:00
46 changed files with 526 additions and 5229 deletions

View File

@@ -17,7 +17,7 @@
#include "merge-ll.h"
#include "lockfile.h"
#include "mem-pool.h"
#include "merge-recursive.h"
#include "merge-ort-wrappers.h"
#include "object-name.h"
#include "object-store-ll.h"
#include "parse-options.h"
@@ -907,10 +907,10 @@ static int merge_working_tree(const struct checkout_opts *opts,
o.branch1 = new_branch_info->name;
o.branch2 = "local";
o.conflict_style = opts->conflict_style;
ret = merge_trees(&o,
new_tree,
work,
old_tree);
ret = merge_ort_nonrecursive(&o,
new_tree,
work,
old_tree);
if (ret < 0)
exit(128);
ret = reset_tree(new_tree,