我已经编辑了(通过gerrit UI)一个补丁集。它被接受并提交,因此这个变更集已经合并和关闭。这个变化确实有一些孩子,尚未提交。内联编辑确实为此特定更改集创建了新的提交ID。
之后,我确实拉了提交的更改以更新我的本地分支。我需要pull --rebase
,因为fast-foward
合并是不可能的。 rebase将我带入了由内联编辑引入的提交。我修复了由我的内联eidit引入的冲突,然后运行rebase --continue
。现在推动我的分支机构拒绝使用消息:! [remote rejected] HEAD ... (change http://.../93 closed)
,其中http://.../93
是我刚刚提到的更改集。
确定它已关闭,因为它已提交并合并到远程。那么为什么要让git将提交的内容推送到远程。 或直截了当:如何逃避这种情况,因为在此之后有超过13次提交(包括一次合并到另一个分支)。
更多信息:
$ git log
* 7316eba - (HEAD -> feature#93)
* b23274f
* 32ae464
* 2cd68bb
* d485183 - (origin/feature#93)
内联编辑引入了提交d485183
。此提交与gerrit更改集中显示的提交相同。提交2cd68bb
以及上述提交尚未提交。属于这些提交的更改集确实在gerrit UI中显示路径冲突。
答案 0 :(得分:0)
回答我自己的问题:
提交2cd68bb
是d485183
的旧工作状态。因此两者都具有相同的变更ID。 pull --rebase
已经在gerrits新提交的基础上重新定义了我的东西。我通过删除提交2cd68bb
来修复它。