我偶尔会在git控件下从项目中删除一些文件。之后我做了很多提交。如何(1)在历史中找到该文件所包含的最新修订版,以及(2)仅恢复它?
答案 0 :(得分:3)
要查找删除文件的提交:
git log --all -- folder/other-folder/file_name.txt
甚至只是
git log --all -- */file_name.txt
然后就这样做:
git checkout (commit hash)^ -- folder/other-folder/file_name.txt
^告诉git不使用那个提交,而是先用一个。
答案 1 :(得分:0)
如果您可以确定删除发生的提交,则可以尝试git reflog
。 reflog
将显示对存储库进行的所有提交。一旦找到提交,您就可以执行git checkout <SHA of commit above>
,这将使您的工作目录进入该提交的状态。然后,您可以手动复制该文件的版本,执行git checkout <branchname>
转到所需的分支,然后commit
在下一个commit
中添加该文件。