2009-04-15 67 views
3

有沒有可以做兩種方法比較的工具?我正在研究一些遺留代碼,它有幾個包含大量重複的100-200行方法,我想抽象出重複。能夠區分這兩種方法將是一個巨大的幫助。萬一它很重要,我正在使用.NET和Visual Studio 2008.比較兩種方法的文本

回答

1

不知道這是否適合你,但是(不出所料)emacs可以爲兩個文件中的區域進行逐行或逐字比較。

查看emacs ediff如果感興趣(它也做文件/緩衝區比較,文件對祖先,補丁,3文件比較和合並....非常全面)。我不認爲我在任何其他編程編輯器中都看到過差異/合併系統。

0

我已經使用checkstyle,但它是爲java。

1

我用WinMerge來解決這個問題。

我將這些方法複製到WinMerge中的新文檔中,然後在那裏工作,直到我將多餘的部分剪掉。

1

我建議猿:http://www.harukizaemon.com/simian/

編輯以添加新的鏈接。

+0

鏈接已死亡。谷歌建議http://www.harukizaemon.com/simian/作爲新的,但我不確定它是完全相同的工具。 – LJNielsenDk 2013-09-04 13:18:55

0

Visual Studio 2008 Team Edition將documaent比較放入其中。因此,根據您運行的版本,您可能需要右鍵單擊解決方案資源管理器並選擇「比較」。

0

Subversion GUI客戶端Tortoise可以對兩個文本文件(或本例中的代碼文件)進行差異化,只需在不同的txt文件中複製這兩個方法,選擇它們,右鍵單擊並從tool菜單中選擇diff。

0

Sourcegear's Diffmerge是非常好的和免費的。您需要將您的代碼剪切成不同的文件,以便將它們與側面/側面進行比較。你可以使用這個(和大多數類似的工具)一次比較三個文件。

0

您可以使用像Diffuse這樣的工具。只需將文件拖放到任一窗格上,從一種方法中選擇一行,右鍵單擊其他窗格中相應行的內容,然後選擇「與選擇對齊」。您甚至可以雙擊,然後直接在Diffuse中重新分解代碼。

2

我結合使用WinMergeClipboardDiff。然後,您可以在剪貼板內容和突出顯示的內容之間進行比較,而無需保存任何文件。