Why does my --diff-cmd complain about -u when I try to override it with --extensions?

When using an external diff command, Subversion builds a fairly complicated command line. If your preferred diff command does not support these arguments, you may need to create a small wrapper script to discard arguments and just use the last couple file paths.

First is the specified --diff-cmd. Next comes the specified --extensions (although empty --extensions are ignored), or '-u' if --extensions is unspecified (or specified as ' '). Third and fourth, Subversion passes a '-L' and the first file's label (e.g. "project_issues.html (revision 11209)"). Fifth and sixth are another '-L' and the second label. Seventh and eighth are the first and second file names (e.g. ".svn/text-base/project_issues.html.svn-base" and ".svn/tmp/project_issues.html.tmp"). Warning: Beware that Subversion does not expect the external diff program to change the files it receives, and doing so may scramble the working copy.