pr-835/newren/ort-directory-renames-v3
tagged this
19 Jan 19:53
This series depends on a merge of en/merge-ort-3 (en/merge-ort-recursive has since merged to master and need not be listed as a dependent series anymore). This series mostly implements directory rename detection for merge-ort; ; I'll cover the "mostly" bit below. If one merges this series with en/ort-conflict-handling, then this series drops the number of failing tests in the testsuite under GIT_TEST_MERGE_ALGORITHM=ort from 60 down to 8. As noted in the earlier submissions, most all the logic is copied from merge-recursive.c, with numerous but minor modifications due to differences in data structures. The final patch, however, is new and fixes a known bug in merge-recursive (showcased by testcase 12f of t6423). Changes since v2: * numerous small fixups highlighted by Taylor in his reviews Elijah Newren (17): merge-ort: add new data structures for directory rename detection merge-ort: initialize and free new directory rename data structures merge-ort: collect which directories are removed in dirs_removed merge-ort: add outline for computing directory renames merge-ort: add outline of get_provisional_directory_renames() merge-ort: copy get_renamed_dir_portion() from merge-recursive.c merge-ort: implement compute_rename_counts() merge-ort: implement handle_directory_level_conflicts() merge-ort: modify collect_renames() for directory rename handling merge-ort: implement compute_collisions() merge-ort: implement apply_dir_rename() and check_dir_renamed() merge-ort: implement check_for_directory_rename() merge-ort: implement handle_path_level_conflicts() merge-ort: add a new toplevel_dir field merge-ort: implement apply_directory_rename_modifications() merge-ort: process_renames() now needs more defensiveness merge-ort: fix a directory rename detection bug merge-ort.c | 830 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 811 insertions(+), 19 deletions(-) base-commit: 8f894b22636d5d0cdfca0ae5fd88d327cc3349b3 Submitted-As: https://lore.kernel.org/git/pull.835.v3.git.1611086033.gitgitgadget@gmail.com In-Reply-To: https://lore.kernel.org/git/pull.835.git.1610049687.gitgitgadget@gmail.com In-Reply-To: https://lore.kernel.org/git/pull.835.v2.git.1610055365.gitgitgadget@gmail.com
Assets 2
-
2021-01-19T19:53:53Z -
2021-01-19T19:53:53Z -