如何从git中查找和恢复单个文件?

时间:2014-07-27 10:20:54

标签: eclipse git

我偶尔会在git控件下从项目中删除一些文件。之后我做了很多提交。如何(1)在历史中找到该文件所包含的最新修订版,以及(2)仅恢复它?

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 reflogreflog将显示对存储库进行的所有提交。一旦找到提交,您就可以执行git checkout <SHA of commit above>,这将使您的工作目录进入该提交的状态。然后,您可以手动复制该文件的版本,执行git checkout <branchname>转到所需的分支,然后commit在下一个commit中添加该文件。