您将推荐哪种GUI差异查看器,并具有“左右复制”功能?


30

除了Meld以外,我几乎没有用过其他任何东西。你还能推荐其他东西吗?

如果您给出推荐的理由(作为评论),那将更好。

[ note ]我想要一个替代方法,因为Meld最近失去了将整个内容从一个文件复制到另一个文件的功能。我指的是通过Copy To Left/Right右键单击菜单项可用的功能。

[ 更新 ]我刚刚检查了一下,这个问题是由1.3.2引入的。1.3.1很好用,我检查的最新版本是1.4.0,它不起作用。


4
您是否尝试过kdiff3.sourceforge.net
kasterma 2010年

@kas我现在刚刚尝试过,我注意到它不能满足我从这样的工具中所需要的需求(请查看我添加到问题中的注释)。
tshepang

2
@Tshepang:kdiff3确实允许这样做。将文件标记为“从A合并到B”,然后开始合并。您可以逐个差异地选择要复制的部分。忽略所有您不想复制的内容。满意后,点击保存。要复制整个文件,只需将其标记为“将A复制到B”。您可能需要反转A和B,具体取决于您实际复制的方式。
Sorpigal 2010年

@Sor你确定吗?我使用的版本是0.9.95,但找不到“从A合并到B”。我检查了Merge菜单下。
tshepang 2010年

1
@Tshepang我使用的是Meld 1.3.0,我相信它是最新版本。选择左侧文件的全部内容(单击文本并按Ctrl + A),然后右键单击它。我得到选项“复制到右侧”,然后单击它,将左侧文件的全部内容复制到右侧文件。同样,对于其他文件,我得到“复制到左侧”选项。因此,它确实允许您将文件的全部内容复制到另一个文件中。
巴伦

Answers:


24

有许多可用的工具:

  • 融合
  • kompare-差异文件查看器
  • kdiff3-文件差异查看器
  • 漫反射 -文件差异查看器

您是否有两个文件并想查看它们之间的差异?使用“文件差异查看器”。您是否有一个diff文件,并希望以易于阅读的显示形式查看它?使用“差异文件查看器”。


+1表示建议Kompare;至少在我看来,它似乎比Kdiff3更好。
tshepang 2010年

1
还有一个diffuse:diffuse.sourceforge.net/manual.html

@gabe将该可爱的工具添加到列表中。
tshepang 2010年

确实有一些很好的svn知识,因此您可以像“ svn diff”一样或多或少地使用它。
约翰

1
@Tshepang-我喜欢kdiff3将突出显示一行中已更改的单个字符。大多数差异工具只会突出显示整行内容,这可能会使找出变化的难度更大。请牢记一个不错的功能……
Justin Ethier

9

也有vimdiff(带有其GUI版本gvimdiff)。


7

Emacs的捆绑ediff软件包是一个很好的差异查看器(从Emacs Tools / CompareTools / Merge菜单中的命令开始)。它具有所有基本功能(突出显示两个文件之间的差异,在不同块之间跳转)和最常见的中间功能(比较文件的各个部分,比较从版本控制中获取的修订版本,比较目录树,使用公共祖先作为参考点,产生合并版本)。但是,它没有非常花哨的忽略功能。

与大多数其他差异查看器相比,Emacs具有更好的搜索功能,语法突出显示和Lisp可扩展性。哦,还有一个集成的编辑器。


当我尝试使用emacs diff查看器时,我发现缓冲区没有同时滚动(在vimdiff中,它们滚动,因此相关部分始终处于相邻状态)。您知道您要在emacs中实现这一目标吗?
kasterma

@kasterma:v/ ^ediff-scroll-vertically,取决于您要调用它的按键向上或向下移动)并行滚动所有窗口。
吉尔斯(Gillles)“所以-别再邪恶了”

2

我推荐kdiff3。程序员可以使用它来比较软件开发过程中的src文件,也可以使用定期备份的人员来比较2个文件夹(递归地向下比较),其中第一个位于系统硬盘中,第二个位于外部备份硬盘中。

在后一种情况下,您可以配置日期和时间以及大小比较,而不是程序员所需的逐行比较。它为比较中涉及的每个目录/文件提供了漂亮的颜色编码输出,您可以有选择地将在系统硬盘中创建/删除的新文件添加/删除到备份硬盘。




By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.