我的最后几个命令是:
git rebase -i HEAD^^
git rebase -i HEAD^^
git rebase -i HEAD^^^
我该如何将存储库恢复到列出命令之前的状态?
注意:到目前为止,我所做的一切都是 git commit -am“我的提交消息”
。我还不了解分支和合并,因此没有使用它们。我试图将代码回滚到上一个提交,但似乎没有任何作用。
我的最后几个命令是:
git rebase -i HEAD^^
git rebase -i HEAD^^
git rebase -i HEAD^^^
我该如何将存储库恢复到列出命令之前的状态?
注意:到目前为止,我所做的一切都是 git commit -am“我的提交消息”
。我还不了解分支和合并,因此没有使用它们。我试图将代码回滚到上一个提交,但似乎没有任何作用。
git reset --hard HEAD@{3}
将使您回到3个命令之前的HEAD。更一般地,查看git reflog
的输出以确定要恢复的引用,然后使用git reset
进行恢复。git reset --hard <branch>@{3}
可以工作 - 假设所有的变基都实际做了些什么。如果没有,那就太远了。我建议查看 git reflog show <branch>
确保你得到想要的。 - Cascabelgit checkout <file>
从索引中获取 <file>
的版本并将其放置在工作树中。它只影响工作树中的那个文件。它与移动 HEAD
没有任何关系。 - Cascabel