diff --git a/hgext/hgk.py b/hgext/hgk.py --- a/hgext/hgk.py +++ b/hgext/hgk.py @@ -95,8 +95,10 @@ def difftree(ui, repo, node1=None, node2 if opts['pretty']: catcommit(ui, repo, node2, "") m = scmutil.match(repo[node1], files) + diffopts = patch.difffeatureopts(ui) + diffopts.git = True chunks = patch.diff(repo, node1, node2, match=m, - opts=patch.diffopts(ui, {'git': True})) + opts=diffopts) for chunk in chunks: ui.write(chunk) else: diff --git a/tests/test-hgk.t b/tests/test-hgk.t --- a/tests/test-hgk.t +++ b/tests/test-hgk.t @@ -16,5 +16,32 @@ Minimal hgk check phase draft adda + $ echo b > b + $ hg ci -Am addb + adding b + $ hg log -T '{node}\n' + 102a90ea7b4a3361e4082ed620918c261189a36a + 07f4944404050f47db2e5c5071e0e84e7a27bba9 + + $ hg debug-diff-tree 07f494440405 102a90ea7b4a + :000000 100664 000000000000 1e88685f5dde N b b + $ hg debug-diff-tree 07f494440405 102a90ea7b4a --patch + diff --git a/b b/b + new file mode 100644 + --- /dev/null + +++ b/b + @@ -0,0 +1,1 @@ + +b + +Ensure that diff-tree output isn't affected by diffopts + $ hg --config diff.noprefix=True debug-diff-tree 07f494440405 102a90ea7b4a + :000000 100664 000000000000 1e88685f5dde N b b + $ hg --config diff.noprefix=True debug-diff-tree --patch 07f494440405 102a90ea7b4a + diff --git a/b b/b + new file mode 100644 + --- /dev/null + +++ b/b + @@ -0,0 +1,1 @@ + +b $ cd ..