diff --git a/mercurial/commands.py b/mercurial/commands.py --- a/mercurial/commands.py +++ b/mercurial/commands.py @@ -141,6 +141,7 @@ diffwsopts = [ ] diffopts2 = [ + ('', 'noprefix', None, _('omit a/ and b/ prefixes from filenames')), ('p', 'show-function', None, _('show which function each change is in')), ('', 'reverse', None, _('produce a diff that undoes the changes')), ] + diffwsopts + [ diff --git a/tests/test-completion.t b/tests/test-completion.t --- a/tests/test-completion.t +++ b/tests/test-completion.t @@ -202,7 +202,7 @@ Show all commands + options annotate: rev, follow, no-follow, text, user, file, date, number, changeset, line-number, ignore-all-space, ignore-space-change, ignore-blank-lines, include, exclude, template clone: noupdate, updaterev, rev, branch, pull, uncompressed, ssh, remotecmd, insecure commit: addremove, close-branch, amend, secret, edit, include, exclude, message, logfile, date, user, subrepos - diff: rev, change, text, git, nodates, show-function, reverse, ignore-all-space, ignore-space-change, ignore-blank-lines, unified, stat, include, exclude, subrepos + diff: rev, change, text, git, nodates, noprefix, show-function, reverse, ignore-all-space, ignore-space-change, ignore-blank-lines, unified, stat, include, exclude, subrepos export: output, switch-parent, rev, text, git, nodates forget: include, exclude init: ssh, remotecmd, insecure diff --git a/tests/test-diff-unified.t b/tests/test-diff-unified.t --- a/tests/test-diff-unified.t +++ b/tests/test-diff-unified.t @@ -89,7 +89,7 @@ invalid diff.unified abort: diff context lines count must be an integer, not 'foo' [255] -noprefix config +noprefix config and option $ hg --config diff.noprefix=True diff --nodates diff -r cf9f4ba66af2 a @@ -104,8 +104,21 @@ noprefix config a a c + $ hg diff --noprefix --nodates + diff -r cf9f4ba66af2 a + --- a/a + +++ b/a + @@ -2,7 +2,7 @@ + c + a + a + -b + +dd + a + a + c -noprefix disabled in plain mode +noprefix config disabled in plain mode, but option still enabled $ HGPLAIN=1 hg --config diff.noprefix=True diff --nodates diff -r cf9f4ba66af2 a @@ -120,6 +133,19 @@ noprefix disabled in plain mode a a c + $ HGPLAIN=1 hg diff --noprefix --nodates + diff -r cf9f4ba66af2 a + --- a/a + +++ b/a + @@ -2,7 +2,7 @@ + c + a + a + -b + +dd + a + a + c $ cd .. @@ -215,7 +241,7 @@ Git diff with noprefix -a +b -noprefix config disabled in plain mode +noprefix config disabled in plain mode, but option still enabled $ HGPLAIN=1 hg --config diff.noprefix=True diff --git --nodates diff --git a/f1 b/f 1 @@ -226,6 +252,15 @@ noprefix config disabled in plain mode @@ -1,1 +1,1 @@ -a +b + $ HGPLAIN=1 hg diff --git --noprefix --nodates + diff --git a/f1 b/f 1 + rename from f1 + rename to f 1 + --- a/f1 + +++ b/f 1 + @@ -1,1 +1,1 @@ + -a + +b Regular diff --nodates, file deletion diff --git a/tests/test-help.t b/tests/test-help.t --- a/tests/test-help.t +++ b/tests/test-help.t @@ -500,6 +500,7 @@ Test command without options -a --text treat all files as text -g --git use git extended diff format --nodates omit dates from diff headers + --noprefix omit a/ and b/ prefixes from filenames -p --show-function show which function each change is in --reverse produce a diff that undoes the changes -w --ignore-all-space ignore white space when comparing lines