git revert <commit_hash>
单独使用不起作用。显然,必须指定-m
。
正如Ryan所提到的,git revert
可能会使合并变得困难,因此git revert
可能不是你想要的。我发现在这里使用git reset --hard <commit-hash-prior-to-merge>
命令更有用。
完成硬重置后,您可以强制推送到远程分支,即git push -f <remote-name> <remote-branch-name>
,其中<remote-name>
通常被命名为origin
。从那时起,您可以选择重新合并。
git
的设计与每个人都使用的git-flow
工作流不匹配。如果你已经检出了develop
分支,那么你肯定想要还原引入错误的 2 次提交的特性分支,而不是多年共享的开发分支。感觉需要用-m 1
来选择它非常荒谬。 - pkamb