天天看點

git reset--hard後,如何恢複原本暫存區的檔案

  • 模拟場景,先送出檔案至暫存區,

    git add .

    ,接着使用指令

    git reset --hard

    ,之後通過

    git status

    檢視暫存區的内容,會出現

    nothing to commit , working tree clean

    。如下圖所示:
    git reset--hard後,如何恢複原本暫存區的檔案
  • 使用指令

    find .git/objects/ -type f | xargs ls -lt |sed 6q

  • 其中6q表示輸出最近6次的add内容,将我們需要的檔案内容找到,使用

    $ git cat-file -p 7479a7c9bb7164b779d9d > a.md

    重定向到a.md

    檔案,特别注意,需要去掉7479a7c9bb7164b779d9d中的/,之後檢視a.md,即為我們需要的檔案。

git reset--hard後,如何恢複原本暫存區的檔案