Linux下文件差异比较工具

最近做android源代码移植,需要在linux下比较很几个版本的源代码,找了几个文件差异比较工具

1 KDiff3
KDiff3 是一款用来对文件或目录进行比较/合并的工具,在比较时它可以同时针对两个或者三个文件/目录而进行。通过比较,它将文件/目录的差异按行加以显示。同时,KDiff3 提供有自动化的合并工具,方便使用者进行有关合并的操作。

此外,KDiff3 支持 Unicode 编码,集成了编辑器,可以自动合并版本控制历史。虽然 KDiff3 主要为 KDE 桌面而开发,但是仍然可以运行于其他的 Linux 环境。甚至对于 Windows、Mac OS X,KDiff3 也有相应的版本

2 Diffuse
可视化比较,非常直观。
支持两相比较和三相比较。这就是说,使用 Diffuse 你可以同时比较两个或三个文本文件。
支持常见的版本控制工具,包括 CVS、subversion、git、mercurial 等。你可以通过 Diffuse 直接从版本控制系统获取源代码,以便对其进行比较和合并。
支持像 C++、Python、Java、XML 等语言的语法高亮显示。
能够直接在 Diffuse 中编辑文件。
支持 UTF-8 编码。
可以使用快捷键轻松导航。

3 Kompare
Kompare 是适用于 KDE 桌面的文件差异比较工具。它允许你以图形化的方式来比较两个文件,并通过不同的颜色来直观的显示文件之间的差异。

Kompare 属于 KDE SDK(软件开发包)的一部分,如果你的 Linux 发行版已经包含了该 SDK,那么说明 Kompare 已经为你准备就绪,并可以随时加以使用。否则,在使用 Kompare 之前,你需要通过相应的包管理工具来安装它。

4 ColorDiff
在 Linux 下,使用 diff 命令可以对文件进行比较,从而了解其差异。不过,diff 命令的输出结果以同色显示,对于这种差异的表现可能不够强烈。好在我们还可以通过 ColorDiff 来加以改善。ColorDiff 是一个 Perl 脚本,它通过不同的颜色来高亮显示 diff 命令的输出结果,非常显眼。

ColorDiff 适用于 Linux 及 BSD 系统,目前已被包含到 Debian、Ubuntu、Gentoo、Arch Linux、Fedora、FreeBSD 等发行版中。你可以从中直接加以安装。

ColorDiff 的用法较简单。如果你要比较两个文件 file1 和 file2,那么可以执行如下命令:

colordiff file1 file2

你也可以将 ColorDiff 用于 diff 命令的管道输出:

diff -u file1 file2 | colordiff

5 Meld
一个可视化的文件及目录比较工具,具有的基本功能包括:

能同时完成两个或三个文件的比较,并以图形化的方式给出各个文件的不同处;
能同时完成两个或三个目录的比较,突出显示不相同的文件、删减过的文件;
文件的合并;
文件编辑;
直接制作补丁;
可以比较本地文件与 CVS 中的文件;

Tags: , , , , , ,

星期六, 16 4 月, 2011 工具

Leave a Reply

1LMooBmUE153Wnd3zDryWvDyXxQudbFxDr