2013-01-09 37 views
3

我在Git項目中有一個文件,該文件的某個特定值由某人在某個點上更改;我不知道誰或什麼時候。我想知道什麼時候進行了更改,但我不確定如何在Git中跟蹤該更改。如何在Git中找到特定文件中的特定更改

我試過使用git diff <sha1> <sha2>,但它顯示了整個項目的差異,而我想檢查一個特定的文件。

+0

你可以找到它[這裏] [1]。此外,你可以閱讀官方的git文檔。 [1]:http://stackoverflow.com/questions/5586383/how-to-diff-one-file-to-an-arbitrary-version-in-git –

+0

@Luis:唯一有效的鏈接語法在SO註釋中是'[Link text](URL)',或原始URL。 –

回答

7

git blame應該可以幫到你。 git blame <file>將逐行顯示<file>,並在每行上包含哪個用戶最後一次更改該行,以及在哪個提交中。

5

除了git blame你也可以用你擁有的命令,但添加一個文件名:

git diff <commit> <commit> <file> 

會告訴你這兩個提交之間的diff,單個文件。

+0

該命令執行時沒有錯誤,並且什麼都不顯示,我不確定爲什麼 – Ahmed

+0

這意味着在兩次提交之間沒有變化。 –

6

你可以嘗試:

git log --all -S oldvalue filename 

這將列出所有提交其中 「OLDVALUE」 的變化(增加或刪除)

相關問題