如果我在分支上运行git checkout--。有什么办法可以找回这些文件?

时间:2019-04-04 11:36:14

标签: git git-checkout

如果我有大量未提交的文件更改,并且出于某种原因在文件上运行git checkout --,然后意识到我需要它-有什么办法吗?

尝试过git checkout HEAD <filename>,但我想HEAD不再是这些文件所在的地方了?

2 个答案:

答案 0 :(得分:4)

否,git在您描述的场景中的任何地方都没有写入这些文件状态。

但是,根据您的上下文,如果使用足够高级的编辑器,它可能会保留您的本地更改。

答案 1 :(得分:-1)

尝试以下命令,也许其中一个可以帮助您。

如果尚未提交删除操作,则以下命令将在工作树中恢复已删除的文件。

 Settings->Editor->Code Style->XML->Android->Layout Files->Wrap Attributes

您可以使用以下命令获取工作树中所有已删除文件的列表。

$ git checkout -- <file>

如果删除已提交,请在发生删除的地方找到提交,然后从该提交中恢复文件。

$ git ls-files --deleted

如果您正在寻找要恢复的文件的路径,则以下命令将显示所有已删除文件的摘要。

$ git rev-list -n 1 HEAD -- <file>
$ git checkout <commit>^ -- <file>