554 node1 = node.bin(self._state[1]) |
553 node1 = node.bin(self._state[1]) |
555 # We currently expect node2 to come from substate and be |
554 # We currently expect node2 to come from substate and be |
556 # in hex format |
555 # in hex format |
557 if node2 is not None: |
556 if node2 is not None: |
558 node2 = node.bin(node2) |
557 node2 = node.bin(node2) |
559 logcmdutil.diffordiffstat(ui, self._repo, diffopts, |
558 logcmdutil.diffordiffstat(ui, self._repo, diffopts, node1, node2, |
560 node1, node2, match, |
559 match, prefix=prefix, listsubrepos=True, |
561 prefix=posixpath.join(prefix, self._path), |
560 **opts) |
562 listsubrepos=True, **opts) |
|
563 except error.RepoLookupError as inst: |
561 except error.RepoLookupError as inst: |
564 self.ui.warn(_('warning: error "%s" in subrepository "%s"\n') |
562 self.ui.warn(_('warning: error "%s" in subrepository "%s"\n') |
565 % (inst, subrelpath(self))) |
563 % (inst, subrelpath(self))) |
566 |
564 |
567 @annotatesubrepoerror |
565 @annotatesubrepoerror |
1777 cmd.append('--stat') |
1775 cmd.append('--stat') |
1778 else: |
1776 else: |
1779 # for Git, this also implies '-p' |
1777 # for Git, this also implies '-p' |
1780 cmd.append('-U%d' % diffopts.context) |
1778 cmd.append('-U%d' % diffopts.context) |
1781 |
1779 |
1782 gitprefix = self.wvfs.reljoin(prefix, self._path) |
|
1783 |
|
1784 if diffopts.noprefix: |
1780 if diffopts.noprefix: |
1785 cmd.extend(['--src-prefix=%s/' % gitprefix, |
1781 cmd.extend(['--src-prefix=%s/' % prefix, |
1786 '--dst-prefix=%s/' % gitprefix]) |
1782 '--dst-prefix=%s/' % prefix]) |
1787 else: |
1783 else: |
1788 cmd.extend(['--src-prefix=a/%s/' % gitprefix, |
1784 cmd.extend(['--src-prefix=a/%s/' % prefix, |
1789 '--dst-prefix=b/%s/' % gitprefix]) |
1785 '--dst-prefix=b/%s/' % prefix]) |
1790 |
1786 |
1791 if diffopts.ignorews: |
1787 if diffopts.ignorews: |
1792 cmd.append('--ignore-all-space') |
1788 cmd.append('--ignore-all-space') |
1793 if diffopts.ignorewsamount: |
1789 if diffopts.ignorewsamount: |
1794 cmd.append('--ignore-space-change') |
1790 cmd.append('--ignore-space-change') |