显示差异输出中一行内的差异

Bri*_*ris 18 diff patch word-diff

此StackOverflow答案具有KDiff3的图像,突出显示行内差异.有人知道一个工具可以在命令行上显示相同的(例如,通过颜色)吗?

想到这一点的另一种方法是想要在补丁文件中区分每个差异.

ire*_*ses 10

我不知道这是否足以满足您的目的,但vimdiff可以做到这一点(甚至是颜色).例如,请参阅此相关问题中的图像.


Sic*_*cco 5

查看所有单词大小差异(尽管不是并排)的另一种直观方法是与wdiff一起使用colordiff(您可能需要同时安装两者)。例如:

wdiff -n {file-A} {file-A} | colordiff
Run Code Online (Sandbox Code Playgroud)

您可以选择通过管道将less -R其滚动到输出中(-R用于显示中的颜色less)。

  • 这是唯一对我有用的无vim解决方案。 (2认同)

gee*_*ekQ 5

我尝试了所有找到的工具:wdiff,dwdiff,kdiff3,vimdiff来显示两条长而略有不同的线条之间的区别.我最喜欢的是diff-highlight(git contrib的一部分)

  • 它支持diff格式 - 比需要两个文件(如dwdiff)的工具更有优势,例如,如果你需要可视化单元测试的输出
  • 如果您将它连接到colordiff,它会突出显示黑色+白色或带有颜色
  • 按字符突出显示 - 有助于比较没有空格的长行(比wdiff好)

安装

在Ubuntu上,你可能已经将它作为git contrib的一部分(安装在gitdeb包中).将其复制或链接到您的〜/ bin文件夹中/usr/share/doc/git/contrib/diff-highlight/diff-highlight

用法示例

cat tmp.diff | diff-highlight | colordiff
Run Code Online (Sandbox Code Playgroud)

结果:

在此输入图像描述