2013-07-03 53 views
1

我使用Git來跟蹤我對項目所做的更改。我經常在我的文件中移動整個部分。請求github或sourcetree忽略移動的行?

當我使用OSX的Sourcetree和GitHub查看差異時,它會將那些移動的行顯示爲已刪除(並在其他地方顯示爲新行)。這在視覺上令人困惑。

如何指示Sourcetree或GitHub忽略移動的線條,並且只顯示線條被刪除,如果它們真的走了?

回答

3

簡短的回答,你不能。

如果您不喜歡git計算的默認差異,您可以嘗試使用--patience(使用「耐心差異」算法生成差異)和--histogram(使用「直方圖差異」算法生成差異。選項git diff

另外這可能有助於Customizing-Git-Git-Attributes#Binary-Files看到Diffing Binary Files。

+0

謝謝。我可以使用-patience與OSX的Sourcetree或Github結合嗎? – incandescentman

+1

如果耐心是你的選擇,那麼你可以將它設置爲配置'git config --global diff.algorithm patience' – Tala

1

另一種方法是使用命令行。您可以指示git的嘗試和猜測何時行代碼已被移動

git blame -M -w <file> 

你應該表現出它認爲是這些線路的原作者作者和SHA1的。這是一個受過教育的猜測,所以有時候可能是錯的。