2015-01-14 28 views
3

我創建了一個文件,然後使用git add <file>將其放入我的git repo中。我可以在git中檢索已經創建,分階段,從未提交但隨後刪除的文件嗎?

我也想在相同的提交中刪除一些文件,所以做了git rm -f 'files.*'

我在刪除行中使用的通配符有點過於通用,它刪除了我以前的階段文件。

考慮到它從來沒有提交過,只有上演,有沒有任何方法來檢索我無意中刪除的文件?

+0

嘗試'git checkout file' –

+0

[在'git rm -rf'後恢復文件]的可能的重複(http://stackoverflow.com/questions/14475003/recover-files-after-git-rm-rf) –

回答

1

如果您已將文件上傳到git,您可能會將其恢復;

  1. 嘗試git fsck --lost-found

輸出將會像;

$ git fsck --lost-found 
Checking object directories: 100% (256/256), done. 
dangling blob 20d25014d965f1fe519d53204222369d09503511 
dangling blob e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 
  • 其中dangling blob的應該是你的文件。嘗試git show <sha>以查看該文件。
  • 注:以上操作之前,運行git gc。它清理不必要的文件並優化本地存儲庫。

    相關問題