我的工作目录file1.c
中有两个文件file1.h
和/tmp/working
。我所做的一切都在我的本地文件系统上。
我在git init
中执行/tmp/working
,在其中创建了一个.git
目录。然后我git add file1.*
和git commit -m "Feb 13th 2017"
。
2月17日,我意外删除了工作目录中的两个文件。如何从我的本地git存储库恢复工作目录中的文件?我不想撤消上次提交或类似的事情,只想将我的文件副本(2月13日的版本)放回我的工作目录。
答案 0 :(得分:2)
您可以尝试从最新提交中检出这两个文件:
git checkout -- path/to/file1.c
git checkout -- path/to/file1.h
关于Git的好处是很难搞清楚事情。您只在当前提交中本地删除了这两个文件。但是使用git checkout
可以轻松访问他们的历史记录。
实际上,任何路径都有效:
git checkout -- path/to/ # extracts the whole "path/to" directory
git checkout -- . # extract all the content of the last commit
您还可以指定任何提交:
git checkout other_branch -- path/to/ # extracts content from other_branch
git checkout v1.7.3 -- path/to/ # from this tag
git checkout eacf33b -- path/to/ # from this commit