还原 git 合并和连续提交



我在尝试将分支与主节点合并时遇到了麻烦,因为合并试图删除我需要保留的主控服务器上的文件和更改。我最终向主节点提交了部分中断的合并,之后我进行了相当多的提交,试图解决问题。

现在我想通过将主控形状重置为其原始状态来撤消所有这些操作。我是唯一一个对主节点进行更改的人,因此其他用户应该不是问题。对以前的提交进行硬重置就足够了吗?或者我是否需要采取其他步骤来确保重置不会在将来的合并中引起问题?

硬重置就足够了,因为它会将所有文件重置为指定提交中的状态。

例如,git reset --hard HEAD~3会将所有文件重置为倒数第三个提交,无论它们在最后三次提交中发生了什么。您的文件将处于一种状态,就好像这些提交从未发生过一样。

当然,您可以只使用要重置到的提交的 SHA id,而不是使用 HEAD~X 表示法。

编辑:强制性警告:如果有人拉动并正在处理您的更改,如果他们试图将他们的工作合并到您重置的主控中,事情就会变得混乱。此外,reset --hard会删除所有未提交的更改,而没有任何机会将其恢复。

最新更新