This series depends on en/merge-cleanup-more and is built on that
series.  (It merges cleanly to master, next, and pu).

This series makes all the "file collision" conflict types be handled
consistently; making them all behave like add/add (as suggested by
Jonathan[1] and Junio[2]).  These types are:
  * add/add
  * rename/add
  * rename/rename(2to1)
  * each rename/add piece of a rename/rename(1to2)/add[/add] conflict

Changes since v2:
  * Removed RFC label (en/merge-cleanup-more is now pu -- in fact, v2
    of that series is in pu; also, I'm starting to build other series
    on this one which has increased my confidence in it)
  * patch for increasing marker length with depth of recursion has been
    pulled from the en/merge-cleanup-more series and added to this series
  * Fixed an incorrect sentence in a commit message that was leftover
    from v1.
  
[1] 
https://public-inbox.org/git/20180312213521.gb58...@aiede.svl.corp.google.com/
[2] 
https://public-inbox.org/git/capc5davu8vv9rdgon8jixeo3ycdvqq38yszzc-cpo+aqcak...@mail.gmail.com


Elijah Newren (8):
  Add testcases for consistency in file collision conflict handling
  t6036, t6042: testcases for rename collision of already conflicting
    files
  merge-recursive: increase marker length with depth of recursion
  merge-recursive: new function for better colliding conflict
    resolutions
  merge-recursive: fix rename/add conflict handling
  merge-recursive: improve handling for rename/rename(2to1) conflicts
  merge-recursive: use handle_file_collision for add/add conflicts
  merge-recursive: improve rename/rename(1to2)/add[/add] handling

 ll-merge.c                           |   4 +-
 ll-merge.h                           |   1 +
 merge-recursive.c                    | 528 ++++++++++++++++-----------
 t/t6036-recursive-corner-cases.sh    | 379 ++++++++++++++++++-
 t/t6042-merge-rename-corner-cases.sh | 333 ++++++++++++++++-
 t/t6043-merge-rename-directories.sh  | 107 +++---
 6 files changed, 1060 insertions(+), 292 deletions(-)

-- 
2.19.1.1036.gce51225f01.dirty

Reply via email to