當我運行:Git的REV-列表找不到提交
git verify-pack -v .git\objects\pack\pack-*.idx
輸出的線路之一包含:
651302358b781ab60f364416272e1c35107c974f blob 23980089 23987383 699599322
但是,如果我試圖查找與該斑點:
git rev-list --all --objects | grep 651302358b781ab60f364416272e1c35107c974f
或者:
git rev-list --all --reflog --objects | grep 651302358b781ab60f364416272e1c35107c974f
我只是得到一個空的結果。我應該無法查找由verify-pack
返回的任何斑點嗎?
根據以下我試圖:創建一個新的克隆,運行git repack
運行git gc
但結果相同。
我確實嘗試過使用git gc,但它沒有任何效果,仍然git verify-pack找到了無法用rev-list查找的blob。並且git repack給出了「沒有新的包裝」。我也試圖再次克隆,同樣的「鬼」對象存在。 – u123
也許它是從reflog條目引用的。嘗試'git rev-list --all --reflogs'查找步驟(同時保留'--objects')。雖然,如果它出現在最初的「克隆」上,那有點奇怪,因爲克隆不會複製引用日誌。 – torek
$ git rev-list --all --reflogs --objects | grep 651302358b781ab60f364416272e1c35107c974f不起作用。似乎rev-list不知道--reflogs選項 – u123