Johan Corveleyn <jcor...@gmail.com> writes: > Ok, thanks. In the meantime I saw that there is not that much > difference anymore between GNU diff and svn_diff, after running the > latter from a release build, and disabling my anti-virus (which makes > me wonder why my anti-virus slows down svn_diff (impact when opening > the modified datasource), but not on GNU diff).
The big difference between Subversion's diff and GNU diff is that GNU uses heuristics to cut short the diff algorithm whereas Subversion grinds on to the end. Certain files trigger the heuristics and then GNU diff is much faster than Subversion. Typically the file has a large number of matches and non-matches repeated through the file, machine generated files sometimes fit this pattern. GNU diff's heuristics work well so when they trigger the resulting diff is usually good enough. They can be disabled using the --minimal option and using that makes GNU diff performance much more like Subversion. -- Philip