簡體   English   中英

Git Repository如何恢復已刪除的文件?

[英]Git Repository How to recover deleted files?

我試圖將我的項目推送到新的存儲庫。 不幸的是,我在提交完成之前意外刪除了項目。 項目目錄中的所有文件都已刪除。 我該如何恢復文件?

$ git log --diff-filter=D --summary | grep delete
 delete mode 100644 .gitignore
 delete mode 100644 LICENSE
 delete mode 100644 README.md
 delete mode 100644 app/__init__.py
 delete mode 100644 app/auth/__init__.py
 delete mode 100644 app/auth/forms.py

如果尚未提交刪除,請對所有文件執行checkout以返回上次提交。 但是,上次提交后的任何更改都會丟失。

git checkout .gitignore
git checkout LICENSE
git checkout README.md
git checkout app/__init__.py
git checkout app/auth/__init__.py
git checkout app/auth/forms.py

如果它們已經提交,您將需要恢復到之前的提交,據稱這些文件存在。 請注意,這將刪除您所做的任何其他更改,而不僅僅是還原這些文件。

git reset --hard <SHA hash of commit where the files existed>

作為JHowIX答案的變體:如果你沒有提交刪除並想要取消刪除工作目錄中的所有文件,而不刪除某些文件,你可以簡單地使用

git checkout .

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM