搜尋

首頁  >  問答  >  主體

git checkout -- . 可以反悔嗎

不慎在錯誤的目錄執行了git checkout -- .,導致最近的變更都恢復成commit時的狀態。
是否有指令可以找回遺失的變更?

大家讲道理大家讲道理2798 天前626

全部回覆(3)我來回復

  • PHP中文网

    PHP中文网2017-04-24 09:12:50

    被添加到index 的內容可以找回(但是只有文件內容,沒有文件名信息,需要人工辨別),沒有被添加的部分已經被刪除了,你只能求助於另外的辦法(備份文件、反刪除恢復等)。

    回覆
    0
  • 迷茫

    迷茫2017-04-24 09:12:50

    據我說知,如果沒有stage那些更改,你就不能恢復了。

    如果stage(add)過,還可能可以恢復(前提是不能運行git gc): 使用 git fsck --lost-found 找到 dangling blob,然后使用 git show <sha_id> 看看這個檔案是不是你之前被恢復的。

    回覆
    0
  • 大家讲道理

    大家讲道理2017-04-24 09:12:50

    git reset --hard HEAD~1 就可以恢復了

    回覆
    0
  • 取消回覆