【问题标题】:What happens on several git reset --soft HEAD^^ [duplicate]几个 git reset --soft HEAD^^ [重复] 会发生什么
【发布时间】:2012-06-09 02:16:21
【问题描述】:

可能重复:
Is there any way to undo the effects of “git revert head”?

我搞砸了我的 GIT。几次我执行 git reset --soft HEAD^^ & 然后提交我的更改。我从不关心这个命令的作用!

这样开始;我创建了我的本地分支,然后挑选更改。后来我跟着 git reset --soft HEAD^^ & 然后每次本地提交。

我才意识到我做错了!

谁能解释一下这个命令的作用?对我的代码有什么影响吗? 我的 HEAD 应该指向哪里以及我该怎么做?

【问题讨论】:

  • @GrailsGuy:不,你链接到的帖子是关于git revert,而不是git reset
  • 不是重复的 (revert != reset),但也不是一个很好的问题(“我做了一些特别奇怪的事情,现在一切都是 fubar”-> 可能对普通观众)。话虽如此,答案可能会被标记为重复(如果可能的话),因为它适用于许多类似的“奇怪”条件。

标签: git github


【解决方案1】:

只需查看git reflog 并找到您想要访问的原始 HEAD(引用为 HEAD@{0} 等)并执行 git reset --hard HEAD@{n}

并尽量运行幂等命令。避免使用 HEAD~ 等,如果您使用,请确保不要只是随机重新运行它们。

【讨论】:

  • 谢谢@Manoj。有效。但是在我的工作树下,有一个文件没有恢复!无论如何我可以从远程存储库中获取特定文件以进行特定修订吗?此外,如果您可以推荐 GIT 阅读或视频将是非常棒的。再次感谢。
猜你喜欢
  • 2014-08-25
  • 2019-08-30
  • 2021-10-28
  • 2020-06-22
  • 2021-05-14
  • 2018-06-17
  • 2011-01-02
  • 2021-10-22
相关资源
最近更新 更多