如何在Eclipse中对同一文件的两个区域进行差异比较

8
我是一名TDDer,经常需要重构出共同或相似的代码。相似的代码并不总是复制和粘贴的结果。
我不是在寻找识别区域或疑似重复的工具,有许多工具可以做到这一点。如果代码完全相同,那么没有大问题,Eclipse几乎总是可以自己完成。
我正在寻找可视化代码部分差异的工具,这些代码部分差异很大,但我的人眼可以看到它们的结构相似,并且可能可以更加相似,以便最终可以将共同的代码重构出来。
如果有可能标记两个区域并让Eclipse(或其他工具)标记差异,那将非常方便。有了这些信息,就可以更简单地迭代地将区域移动到彼此更接近,直到它们完全相同,然后激活提取方法重构。
当然,这可以在Emacs中完成,但我希望能够从Eclipse中轻松使用这个功能。有什么建议吗?

可能是可以比较文件子部分的差异工具的重复问题。 - A.H.
可能的重复问题确实是一个重复的问题,但它已经得到了更多无关的答案(指向工具来识别重复)。我试图让这个问题远离那些答案,并在回答中总结了我的发现。 - thoni56
2个回答

1

看起来这个问题有一些可用的答案, 这个问题表达了同样的需求。但是,那些答案侧重于查找重复项,而不是可视化。

两个可行的建议是KDiff3Diffuse。两者都允许您打开相同的文件两次或将不同的部分粘贴到窗格中。然而似乎没有办法从Eclipse中使用它们。


0

我不知道在Eclipse中如何标记区域并进行差异比较,但是您可以比较两个文件。通过将您想要比较的部分复制到两个粘贴文件中,您可能会得到您要查找的内容,至少90%?

在项目树中选择要比较的两个文件,右键单击 -> 选择与 -> 彼此比较。

祝好, Jørgen


我有点希望能够激发某个人将这个简单的工具添加到一些IDE中,最好是Eclipse... - thoni56

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接