如何撤消 git restore 以取回更改

Mic*_*ert 11 git

这是我的情况,我对 git 还是个新手,当我在做一个项目时,我并没有经常提交。

我完成了项目并添加了 index.html 文件以外的所有内容并提交了它们。我将更改推送到我的存储库。然后我检查了我的 git 状态,看到 index.html 仍然被列出,我认为这是一个错误,也许我只是无意中做了一些编辑,所以我做了一个 git restore index.html。

我几乎立即意识到我做了什么并检查了文件以查看文件已恢复为原始形式。请告诉我有一种方法可以恢复我的更改。我只想强调我使用的命令是git restore index.html

Ank*_*gla 26

如果您不小心恢复的文件当前在您的文本编辑器或 IDE 中打开,则简单的撤消操作就可以解决问题并恢复您的更改。

git restore .当我只想恢复一个文件时,我不小心打了字。对我来说幸运的是,所有通过命令恢复的文件仍然在 VSCode 中打开,我在那里进行了更改,因此在每个文件中执行撤消对我来说都是成功的,我恢复了我的更改。

  • 这是一个显而易见的事情,在恐慌的心态下很容易被忽视。这次真是万分感谢。我真的不想再次做出这些改变。:| (7认同)
  • 这对我在“vim”中有用,谢谢! (2认同)

Isl*_*aev 17

如果您使用 JetBrains IDE,您可以在多个文件中取回更改。

您需要转到每个文件并恢复到本地历史记录中的最后更改(未存储在 git 中)。


par*_*rse 13

如果您的 IDE 没有内置历史记录插件,我强烈建议您使用任何本地历史记录插件。即使版本控制工具就是用于此目的的,但一些刚刚认识并最近开始使用的开发人员却git犯了这个错误!好吧,有时你会因为犯了一个无法撤销的菜鸟 git 错误而失去大量工作。

就我而言,我使用VSCode 的本地历史记录。这就像出现问题时我随时都有的备份。只需使用它,它会花费您一些磁盘空间,但只要您100%确定代码的当前版本,您就可以清理它。


Cal*_*pin 5

如果您从未将index.html更改添加到 git 索引,那么 git 将不会有任何记录。恢复它们的唯一方法是使用您的操作系统或备份提供的任何恢复工具。