从git repo恢复文件而不提交

时间:2013-03-21 07:03:10

标签: git github version-control

我从本地工作区删除了一个文件,然后意识到我需要它。我还没有提交或推送到repo,所以我想将该文件恢复到我当地的工作区。

我的问题是我的本地仓库是远程主机之前的10次提交,因此只是克隆主机不好,也不是检查不同的提交。我担心我要么擦拭当地的回购和来源,要么搞砸了。

感谢您的帮助。

3 个答案:

答案 0 :(得分:3)

如果您尚未提交更改,则以下内容将为您提供该文件:

git checkout <filename>

确切的文件名可以通过git status获得。

答案 1 :(得分:2)

即使您确实提交了更改并希望从早期版本中获取文件,也可以使用命令获取该文件

git show <revision>:<filename> > <new-filename>

(没有重定向输出,它只会在less中显示文件修订版的内容。)

答案 2 :(得分:2)

如果您执行了git add file,其当前的内容将保存在索引中,您可以通过git checkout file将其恢复。如果您没有add它,但之前已经commit,那么您将返回上一个版本。