2011-12-14 130 views
2

我最近收到了一個修改我的文件,我把它放在修訂控制下,但我無法發現這個修改後的文件基於哪個提交。如何找到修改後的文件最相似的提交?

那麼,有沒有辦法確定修改給定文件的哪個提交與編輯版本的差異最小?

+0

相關:混帳:我如何才能找到一個承諾,一個目錄最緊密匹配(http://stackoverflow.com/q/6388283/321973) – 2011-12-15 07:51:08

回答

1

我不知道這個檢查任何神奇的方式,但你可能想試試這個:

git diff --stat HEAD..HEAD~10 -- myfile.cpp 

和手動更改HEAD〜10

它會告訴你有多少差異有介於修訂之間。

可以使用自動完成:

for i in {1..5}; do echo "HEAD~$i"; git diff --stat HEAD~$i..HEAD CMakeLists.txt ; done 
+0

謝謝,我可以將`git-diff --stat`的輸出傳遞給`grep myfile.cpp | gawk'{print $ 3}'`將其減少到更改的數量。我想與循環一起,然後可以使用`sort`來獲得最好的候選人,並手動查看他們的差異 – 2011-12-15 08:08:03

相關問題