TortoiseSVN

This is the official TortoiseSVN task tracker. Issues can only be entered into the tracker by members of the TortoiseSVN development team.

  • If you have a feature/enhancement request, please discuss it first on our mailing list.
  • If you found a bug in TortoiseSVN, report it first on the mailing list.

Thank you!

Tasklist

FS#254 - Color inline diffs

Attached to Project: TortoiseSVN
Opened by Stefan Küng (steveking) - Thursday, 01 June 2006, 18:13 GMT+1
Last edited by Stefan Küng (steveking) - Saturday, 03 June 2006, 17:27 GMT+1
Task Type Feature Request
Category Merge
Status Closed
Assigned To Stefan Küng (steveking)
Operating System Windows
Severity Low
Priority Normal
Reported Version HEAD
Due in Version 1.4.0
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Show inline diffs not just in the bottom two-line view but also directly in the diff views. Also show changed blocks with a different color if there are only whitespace changes inside such a block. (xxdiff calls this \’per-hunk ignore\’)

   xxdiff shot.png (194 KiB)
   perhunk.png (3.2 KiB)
This task depends upon

Closed by  Stefan Küng (steveking)
Sunday, 04 June 2006, 14:58 GMT+1
Reason for closing:  Implemented
Additional comments about closing:  Implemented in revisions 6710, 6712, 6713 and 6714.
Comment by Simon Large (slarge) - Friday, 02 June 2006, 11:39 GMT+1

The existing line diff colouring algorithm is not that great either as it seems not to prioritise long matching hunks over short ones, nor is it interested in the order of matching hunks. The result of this is that of you change a line where the same substring appears several times, the real change gets jumbled up with a load of bogus ones in various shades of green. I would prefer a \’simpler\’ system which operates something like this: Find longest substring common to both lines. Look to the left and right of that substring for next longest matching substrings. When all matching substrings have been found (subject to a minimum length?), mark non matching hunks as deleted in one line and added in the other. Additions in yellow, deletions in pink or cross-hatch, everything else in normal colour, ie. no green needed.

KDiff3 seems to do reasonably well, but I couldn\’t track down the linediff algorithm in the source.

Comment by Stefan Küng (steveking) - Saturday, 03 June 2006, 20:27 GMT+1

Simon, please provide two strings where the diff doesn\’t work that good. Better would be a screenshot of how KDiff3 does the diff on such strings.

Loading...