2015-08-15 26 views
1

我在舊的論壇線程中發現了一個已修復的文件,因爲我有一個git存儲庫。查找已提交的外部修補文件版本

我想找出什麼版本的文件使用(以較少diffstat可能是一個?)

我仍然是個混帳新手。

是否已經有一些這樣的支票git內置? 如果不是,我如何列出文件的每個更改版本並檢出特定版本? (這裏只有主分支)

回答

3

如果你打開了補丁文件(假設它使用Git格式補丁生成),你會發現這樣一行:

diff --git a/file.py b/file.py 
index a344535..477ede1 100644 

這裏,a344535477ede1都提交ID(它們是縮短的SHA /提交ID)。

要籤從中生成補丁文件的版本,請在結賬提交

git checkout a344535 

而現在,你可以做一個gitk(可能需要與apt-get安裝)在倉庫檢查更多的歷史。

注意:上面的git checkout <SHA>會帶你到一個獨立的頭部狀態,因此,一旦你想再次開始你的回購工作,不要忘了做一個git checkout master

+0

謝謝,這有幫助。 'git log --pretty = format:%h FILE.c |同時讀取-r HASH;做混帳簽出$ HASH; WCL = $(diff FILE.c FILE-edited.c | wc -l);回聲「$ WCL $ HASH」;完成| sort' – Alex