2011-11-30 59 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)。