Index: subversion/libsvn_client/diff.c =================================================================== --- subversion/libsvn_client/diff.c (revision 29979) +++ subversion/libsvn_client/diff.c (working copy) @@ -566,10 +566,12 @@ SVN_CONFIG_CATEGORY_CONFIG, APR_HASH_KEY_STRING); svn_config_get(cfg, &diff_cmd, SVN_CONFIG_SECTION_HELPERS, - SVN_CONFIG_OPTION_DIFF_CMD, NULL); + SVN_CONFIG_OPTION_DIFF_CMD, ""); } - if (diff_cmd) + /* "" means use internal diff so that an option in a config file can be + overridden by a command-line setting. */ + if (strlen(diff_cmd)) { /* Print out the diff header. */ SVN_ERR(svn_stream_printf_from_utf8 Index: subversion/svn/main.c =================================================================== --- subversion/svn/main.c (revision 29979) +++ subversion/svn/main.c (working copy) @@ -211,7 +211,8 @@ {"ignore-externals", opt_ignore_externals, 0, N_("ignore externals definitions")}, #ifndef AS400 - {"diff-cmd", opt_diff_cmd, 1, N_("use ARG as diff command")}, + {"diff-cmd", opt_diff_cmd, 1, N_("use ARG as diff command ('' for " + "built-in diff)")}, {"diff3-cmd", opt_merge_cmd, 1, N_("use ARG as merge command")}, {"editor-cmd", opt_editor_cmd, 1, N_("use ARG as external editor")}, #endif