diff --git a/mercurial/patch.py b/mercurial/patch.py --- a/mercurial/patch.py +++ b/mercurial/patch.py @@ -1738,9 +1738,15 @@ def trydiff(repo, revs, ctx1, ctx2, modi s.update(text) return s.hexdigest() + if opts.noprefix: + aprefix = bprefix = '' + else: + aprefix = 'a/' + bprefix = 'b/' + def diffline(a, b, revs): if opts.git: - line = 'diff --git a/%s b/%s\n' % (a, b) + line = 'diff --git %s%s %s%s\n' % (aprefix, a, bprefix, b) elif not repo.ui.quiet: if revs: revinfo = ' '.join(["-r %s" % rev for rev in revs]) 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 @@ -232,7 +232,7 @@ Git diff, adding space Git diff with noprefix $ hg --config diff.noprefix=True diff --git --nodates - diff --git a/f1 b/f 1 + diff --git f1 f 1 rename from f1 rename to f 1 --- f1 @@ -253,7 +253,7 @@ noprefix config disabled in plain mode, -a +b $ HGPLAIN=1 hg diff --git --noprefix --nodates - diff --git a/f1 b/f 1 + diff --git f1 f 1 rename from f1 rename to f 1 --- f1