我的一个同事不小心做了一次合并,结果只保留了树的一侧。他开始一次合并,然后删除了合并引入的所有更改,最后提交了该合并。
这是我在测试仓库上做的一个简单测试用例。该仓库有三个分支。 idx 是意外合并的主题分支,master 是主线。dev 只是一个 revert -m 如何工作的测试,所以您可以忽略它。
我想要做的是还原错误的合并。所以从主线 master 中,我尝试运行 git revert -m 1 <错误合并的 SHA1 校验和>
,但 git 响应说:
# On branch master
nothing to commit (working directory clean)
所以它实际上并没有创建一个撤销合并的提交,我认为这是因为合并实际上并没有包含任何真正的更改。
这是一个git的bug,还是我漏掉了什么?
-m 1
参数。为什么是1
?还有哪些可能的值?如果是-m 2
会发生什么? - Fábio Roberto Teodoro