2008-10-02 52 views
7

我的一位同事要求我查看一些我的代碼,他給我發送了一個diff文件。我並不是一般的差異或版本控制,但由於他做出的改變,diff文件很難閱讀。具體來說,他使用「提取方法」功能並重新排序了一些方法。從概念上講,很容易理解,但看看差異,很難說出他做了什麼。對於我來說,檢出以前的版本並使用Eclipse的「比較」功能要容易得多,但它仍然非常笨重。重構與版本控制很好

是否有任何版本控制系統存儲與重構相關的元數據。當然,這將是IDE和編程語言特定的,但我們都使用Eclipse和Java!也許可能有一些IDE和版本控制實現可以很好地發揮作用的標準?

回答

2

我不知道比較工具,當文件重新安排時,它們做得很好。總的來說,由於這類問題,這是一個糟糕的主意。人們經常會這樣做,只是爲了滿足自己的風格,這是一個糟糕的,不好的理由來改變代碼。它可以有效地摧毀歷史,就像重新格式化整個文件一樣,除非必要,否則不應該完成(即它已經是一團糟並且不可讀)。

另一個問題是工作代碼可能會因爲某些人的風格偏好而被打破。如果沒有損壞,請不要修復它!

+0

重構通常是一個壞主意?有趣! (魔鬼主張,但你確實把它寫進了「這個文件已經安排好了) – 2012-09-19 23:38:28

0

前一陣子我問了一個similar question,從來沒有得到滿意的答案。我會看你的問題,看看人們想出了什麼。

對於您的特定情況,最好查看文件的最新版本,並使用diff作爲指導。這也是我在我的情況下所做的。

0

重構歷史記錄功能對我來說是新的,但我喜歡它的聲音。對於較少工具特定的方法,我喜歡發送補丁文件。審查人員只是應用修補程序並檢查結果,然後他們可以在版本控制完成時恢復到版本控制中的版本。