2011-11-30 24 views
1

我有两个不同版本的网站,一个较旧版本和一个较新版本,它应该具有某种病毒(或某种恶意代码) 。我需要在两个站点之间执行差异,并尝试消除较新版本中的病毒。尝试使用NetBeans及其Git存储库执行diff比较

经过一番搜索后,我发现netbeans 7.1能够使用它的Git Repository来做到这一点。我正在学习本教程http://netbeans.org/kb/docs/ide/git.html,但我在屏幕上没有得到与本教程中相同的选项。我正在使用netbeans 7.1 RC1并从同一页面上的链接下载jdk。 jdk下载本身说jdk7,但它在我的电脑上创建的文件夹名为jdk1.7.0_01。我假设jdk7是jdk1.7的简称。

我得到“Initializing Git Repository”步骤的最后一步。结束时,它会显示“所有项目文件已标记为已添加到工作树中。要查看文件状态,请将光标放在”项目“窗口中的文件名上。工作树中文件的状态显示为绿色如下图所示斜线的右边。“不会发生。

无论如何,我试过更进一步,但只有越来越多的选项不会显示出来。

我也打开另一种方式来执行站点之间的差异操作,它不必与使用netbeans。但我应该注意到,我无法访问unix框。所以解决方案必须适用于Windows,或者我想如果需要的话,我可以继续使用同事的mac。

谢谢。

回答

3

从你的问题,这听起来像你没有在你的网站代码版本控制。如果是这样的话,我会建议这样做,而git是一个非常好的选择。这是我使用的。

然而,您的目标是将您的站点的旧版本与“新版本”(可能受感染)版本区分开来,而且无需处理版本控制系统即可完成。 Windows有几个很好的差异工具。我主要使用WinMerge,因为我喜欢它的用户界面和简单性。 KDiff3是另一个不错的选择,我将它与git合并操作结合使用,因为它支持三向合并比较(WinMerge没有)。

如果你使用的WinMerge您的差异,你不得不从旧版本的代码在Q:\example.com\old-versionQ:\example.com\current-version“新”版本,那么你将开始的WinMerge,而无论是从菜单中选择File|Open...,或点击在工具栏中的打开图标上。你会得到类似下面的对话框,然后将填补其在如图所示:

WinMerge File|Open... dialog example.

如果您填写一切正常,那么你就可以点击OK按钮,然后会得到一个列表的文件差异。根据默认设置,您可能还会在该列表中看到完全没有改变的文件。您可以使用View菜单隐藏这些。双击具有差异的文件将打开两个版本并显示不同之处。

探索WinMerge选项。例如,我有我的设置来比较空白区域的差异,但忽略不同的行结尾(Unix的LF与Windows的CR/LF)。