這個問題在這里已經有了答案: 如何撤消 git reset --hard HEAD~1? (19 個回答) 4天前關閉。
最初,我想將最后 6 個提交壓縮為一個。所以我按照這個答案運行了以下內容:
git reset --hard HEAD~3
git reset --hard HEAD~2
git reset --hard HEAD~1
然后我看到我的代碼進度消失了,我擔心我可能會丟失我的進度,所以我想撤消那個重置。所以我按照這個答案跑了:
git reset ORIG_HEAD
在這之后,我想我會得到我最近的代碼進度,但是在最后一次重置之后我發現了 67 個未暫存的更改,并且代碼似乎沒有被恢復。
那么,我現在應該怎么做才能恢復我的代碼呢?在繼續或嘗試其他答案之前,我想非常確定。
uj5u.com熱心網友回復:
通過使用git reflog,您可以查看您的 HEAD 最近進行的所有提交。然后,您可以使用 commit-ishHEAD@{N}回到以前訪問過的提交。
由于您似乎已更改 HEAD 4 次,因此您應該嘗試git reset --hard HEAD@{4}.
警告:如果您嘗試但不成功,它會在您再次移動 HEAD 時更改您的 reflog 歷史記錄,因此git reflog在每次嘗試失敗后運行并使用 git 訊息來識別正確的提交。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/443891.html
