This is a resend of sb/diff-color-move-more
https://public-inbox.org/git/20180629001958.85143-1-sbel...@google.com/
that fixes an errornous squashing within the series; the end result is
the same. range diff is below. (As the latest cooking email said
this series is going to land in next soon, I hope this is not too late
of a resend; otherwise just ignore it as the end result is the same)

Thanks,
Stefan

Stefan Beller (9):
  xdiff/xdiff.h: remove unused flags
  xdiff/xdiffi.c: remove unneeded function declarations
  t4015: avoid git as a pipe input
  diff.c: do not pass diff options as keydata to hashmap
  diff.c: adjust hash function signature to match hashmap expectation
  diff.c: add a blocks mode for moved code detection
  diff.c: decouple white space treatment from move detection algorithm
  diff.c: factor advance_or_nullify out of mark_color_as_moved
  diff.c: add white space mode to move detection that allows indent
    changes

 Documentation/diff-options.txt |  30 +++-
 diff.c                         | 253 +++++++++++++++++++++++++++++----
 diff.h                         |   9 +-
 t/t4015-diff-whitespace.sh     | 243 ++++++++++++++++++++++++++-----
 xdiff/xdiff.h                  |   8 --
 xdiff/xdiffi.c                 |  17 ---
 6 files changed, 472 insertions(+), 88 deletions(-)

-- 
2.18.0.203.gfac676dfb9-goog

1:  7199e9b5608 ! 1:  7d58ad461cb diff.c: decouple white space treatment from 
move detection algorithm
    @@ -207,9 +207,8 @@
     +  EOF
     +
     +  # Make sure we get a different diff using -w
    -+  git diff --color --color-moved -w |
    -+          grep -v "index" |
    -+          test_decode_color >actual &&
    ++  git diff --color --color-moved -w >actual.raw &&
    ++  grep -v "index" actual.raw | test_decode_color >actual &&
     +  q_to_tab <<-\EOF >expected &&
     +  <BOLD>diff --git a/text.txt b/text.txt<RESET>
     +  <BOLD>--- a/text.txt<RESET>
    @@ -224,9 +223,8 @@
     +
     +  # And now ignoring white space only in the move detection
     +  git diff --color --color-moved \
    -+          
--color-moved-ws=ignore-all-space,ignore-space-change,ignore-space-at-eol |
    -+          grep -v "index" |
    -+          test_decode_color >actual &&
    ++          
--color-moved-ws=ignore-all-space,ignore-space-change,ignore-space-at-eol 
>actual.raw &&
    ++  grep -v "index" actual.raw | test_decode_color >actual &&
     +  q_to_tab <<-\EOF >expected &&
     +  <BOLD>diff --git a/text.txt b/text.txt<RESET>
     +  <BOLD>--- a/text.txt<RESET>
2:  5626d523b70 = 2:  f08353f2a02 diff.c: factor advance_or_nullify out of 
mark_color_as_moved
3:  e2f1e573699 ! 3:  3fde7cf2194 diff.c: add white space mode to move 
detection that allows indent changes
    @@ -339,30 +339,6 @@
     diff --git a/t/t4015-diff-whitespace.sh b/t/t4015-diff-whitespace.sh
     --- a/t/t4015-diff-whitespace.sh
     +++ b/t/t4015-diff-whitespace.sh
    -@@
    -   EOF
    - 
    -   # Make sure we get a different diff using -w
    --  git diff --color --color-moved -w |
    --          grep -v "index" |
    --          test_decode_color >actual &&
    -+  git diff --color --color-moved -w >actual.raw &&
    -+  grep -v "index" actual.raw | test_decode_color >actual &&
    -   q_to_tab <<-\EOF >expected &&
    -   <BOLD>diff --git a/text.txt b/text.txt<RESET>
    -   <BOLD>--- a/text.txt<RESET>
    -@@
    - 
    -   # And now ignoring white space only in the move detection
    -   git diff --color --color-moved \
    --          
--color-moved-ws=ignore-all-space,ignore-space-change,ignore-space-at-eol |
    --          grep -v "index" |
    --          test_decode_color >actual &&
    -+          
--color-moved-ws=ignore-all-space,ignore-space-change,ignore-space-at-eol 
>actual.raw &&
    -+  grep -v "index" actual.raw | test_decode_color >actual &&
    -   q_to_tab <<-\EOF >expected &&
    -   <BOLD>diff --git a/text.txt b/text.txt<RESET>
    -   <BOLD>--- a/text.txt<RESET>
     @@
        test_cmp expected actual
      '

Reply via email to