我最近不得不查看git rebase --rebase-merges
,但是我运气不高。
我维护着Rust编译器的分支,最近我在上游进行了合并,从而解决了许多合并冲突。然后我不得不进行第二次合并,因为我很不走运,并且在进行第一次合并时上游回购交易被撤消。
我希望使用git rebase -i --rebase-merges
将两个合并压缩在一起,但是保留在上游创建的嵌套合并(如果可能的话。)>
问题是,无论我如何尝试都会收到此错误消息:
$ git rebase --rebase-merges -i sd-upstream/master error: refusing to update ref with bad name 'refs/rewritten/Auto-merge-of-#65134---davidtwco:issue-19834-improper-ctypes-in-extern-C-fn,-r=rkruppe' hint: Could not execute the todo command hint: hint: label Auto-merge-of-#65134---davidtwco:issue-19834-improper-ctypes-in-extern-C-fn,-r=rkruppe hint: hint: It has been rescheduled; To edit the command before continuing, please hint: edit the todo list first: hint: hint: git rebase --edit-todo hint: git rebase --continue
((在上面的
sd-upstream
中是我组织的上游,而不是Rust的上游–我在分支合并之前在树上重新定基础)
我收到上面的错误即使我没有更改待办事项
。我是在做错什么,还是git错误?看起来git扼杀了Bors(Rust团队用来进行汇总合并等的自动程序)自动生成的提交消息。
我在Debian 10上使用git-2.20.1。
我最近不得不查看git rebase --rebase-merges,但是我运气不高。我维护了Rust编译器的分支,最近在上游进行了合并,修复了大量的合并...
--rebase-merges
中有一个错误已在Git 2.25中修复: