mgunes Asked: 2010-11-09 17:00:48 +0800 CST2010-11-09 17:00:48 +0800 CST 2010-11-09 17:00:48 +0800 CST 使差异输出更具可读性 772 我正在寻找一种工具,它将获取 diff / debdiff 输出(更具体地说,此脚本的输出)并以高度可读的图形方式显示比较结果。任何指针将不胜感激。 理想情况下,它将是 GTK+、FOSS 等价物MDR。 Meld、Diffuse 和类似软件不适合此目的,因为它们旨在独立工作,并且不接受标准输入的输入。 development source-code 6 个回答 Voted Best Answer scottl 2010-11-12T18:38:24+08:002010-11-12T18:38:24+08:00 Kompare可以做到这一点(并且是最好的 GUI diff-viewer IMO): ./whatchanged package_name | kompare - 请注意作为输入文件参数给出的“-”。大多数 *nix 程序都有这个接口来接受管道输入,所以你可以使用任何你喜欢的接口。 Mnementh 2010-11-15T04:13:41+08:002010-11-15T04:13:41+08:00 如果你只有一个控制台,colordiff是一个相当不错的解决方案。 要安装它,请sudo apt-get install colordiff在终端中运行此命令 Martin Owens -doctormo- 2010-11-09T21:11:39+08:002010-11-09T21:11:39+08:00 我会使用这个简单的脚本来使用 meld(或任何其他现有工具),这样您就可以获得一点灵活性: #!/bin/bash TMPDIR=`mktemp -d` DIFF_FILE=`mktemp` TARGET='./' cat /proc/$$/fd/0 > $DIFF_FILE cd $TARGET rsync -apvz --delete --stats --compress --progress $TARGET $TMPDIR patch -R -p0 -d $TMPDIR < $DIFF_FILE meld $TARGET $TMPDIR 使用 meld 和 bzr diff 的输出进行了测试,因此将其复制到 /usr/bin 和 chmod 755 中,我这样做了: bzr diff | meld-diff 结果显示如预期。 Kees Cook 2010-11-09T21:45:29+08:002010-11-09T21:45:29+08:00 我喜欢使用vim的内部语法高亮作为寻呼机,这样我就可以查看彩色差异。例如,把它放在你的.bashrc: sudo apt-get install vim alias vless='vim -u /usr/share/vim/vimcurrent/macros/less.vim' .bashrc(然后使用重新获取资源. ~/.bashrc。)然后您可以vless作为寻呼机运行: vless /path/to/your.diff 它不是图形的,但至少突出显示。 Johanna Larsson 2010-11-10T04:23:52+08:002010-11-10T04:23:52+08:00 尽管可以在没有太多依赖项的情况下安装 KDE 应用程序,但 kdiff 是一个很棒的差异编辑/合并工具。 crncosta 2010-11-13T08:54:51+08:002010-11-13T08:54:51+08:00 我知道您不会要求将差异工具集成到编辑器中,但我确信在了解了您的编辑器可以提供的内容之后,您可以避免上下文切换(从编辑器到终端,然后返回到编辑器)。emacs 和 vim 都带有差异工具。 对于emacs情况,您将使用Ediff 模式(默认安装)。查看此wiki 页面或查阅官方手册 使用 emacs 很简单,只需键入Alt + x和键入ediff. 您可以使用 ediff 浏览存储库的分支和修订版本之间的差异(bzr、git、svn 等)。
Kompare可以做到这一点(并且是最好的 GUI diff-viewer IMO):
请注意作为输入文件参数给出的“-”。大多数 *nix 程序都有这个接口来接受管道输入,所以你可以使用任何你喜欢的接口。
如果你只有一个控制台,
colordiff
是一个相当不错的解决方案。要安装它,请
sudo apt-get install colordiff
在终端中运行此命令我会使用这个简单的脚本来使用 meld(或任何其他现有工具),这样您就可以获得一点灵活性:
使用 meld 和 bzr diff 的输出进行了测试,因此将其复制到 /usr/bin 和 chmod 755 中,我这样做了:
bzr diff | meld-diff
结果显示如预期。
我喜欢使用vim的内部语法高亮作为寻呼机,这样我就可以查看彩色差异。例如,把它放在你的
.bashrc
:.bashrc
(然后使用重新获取资源. ~/.bashrc
。)然后您可以vless
作为寻呼机运行:它不是图形的,但至少突出显示。
尽管可以在没有太多依赖项的情况下安装 KDE 应用程序,但 kdiff 是一个很棒的差异编辑/合并工具。
我知道您不会要求将差异工具集成到编辑器中,但我确信在了解了您的编辑器可以提供的内容之后,您可以避免上下文切换(从编辑器到终端,然后返回到编辑器)。emacs 和 vim 都带有差异工具。
对于emacs情况,您将使用Ediff 模式(默认安装)。查看此wiki 页面或查阅官方手册
使用 emacs 很简单,只需键入
Alt + x
和键入ediff
.您可以使用 ediff 浏览存储库的分支和修订版本之间的差异(bzr、git、svn 等)。