0
我正在尋找一種方法在git中構建文件的完整歷史記錄,並訪問原始文件內容(與diff相對)。git - Blob/index文件歷史記錄
爲了做到這一點,我試圖獲得在blob在git中執行時生成的散列,然後我可以使用該散列來查找使用git add進行的原始文件內容。
我已經找到了一種通過查看完整的'原始'提交與 git log --raw得到上演哈希的方法。
但是,這爲我提供了一些我不需要的信息,例如作者,日期,提交消息。我希望能夠自己獲取文件名和散列,而不需要其他所有信息。我能夠使用正則表達式來修剪我想要的信息,但希望得到一個不需要修剪的解決方案,我希望有人可能會有一個git咒語來獲取這個信息。
commit 0fef32119a00ca59b24686257fdd7e056c0bcb1a
Author: BenjaminWeber <[email protected]>
Date: Thu Feb 11 20:17:04 2016 +0000
commit message here
:000000 100644 0000000... e69de29... A .deps
:000000 100644 0000000... 68af6a7... A foo
:000000 100644 0000000... 2372199... A bar
我知道git ls-files -s爲目前正在上演的文件獲取散列,但我想要整個舞臺歷史不僅僅是當前舞臺 –
這聽起來有趣,但它的方式不清楚你正在努力去做。 「完整的舞臺歷史」? –
@andrewC我正在嘗試獲取文件的完整**內容**歷史記錄。 如果我有一個名爲'foo'的純文本文件,我已經修改了3次以上的提交,我希望能夠從每次提交中獲得文件的完整純文本內容。 爲了做到這一點,我試圖獲得爲'foo'生成的哈希,當它在git中進行時。 –