首页 > 解决方案 > 如何使用 git checkout 恢复修改过的文件?

问题描述

我想检查我对代码的新更改是否与现有数据库兼容,因此我尝试从HEADremote创建一个新分支ORIGIN

我运行了以下代码:

git checkout -b test origin/master

直到此时,我修改后的代码都存在于新分支中。我知道这一点,因为我看到了类似的输出

M filename1
M filename2
M filename3
M filename4

我想将更改回滚到之前推送的提交,因此运行了这个命令

git reset --hard HEAD

运行此命令,反转所有更改。我以为这只发生在这个分支上,但我错了。我对该分支中的代码进行了一些更改(我只编辑了一个之前在 master 分支中修改过的文件)

我认为这是所有错误的地方,我使用检查了主分支

git checkout master

我看到类似于以下的输出

M filename1
M filename2

这是我意识到所有更改都丢失的地方。我已尝试再次重置 HEAD,但没有任何进展。

有什么办法可以恢复这些文件,还是我必须重新编写所有代码?

标签: gitgit-reset

解决方案


推荐阅读