我有一个与GitHub上的pull-request机制有关的问题。
Bob在其分支中提交了一些更改:
* Added feature foo
* Added feature bar
* Removed latency in baz
然后他创造了一个PR。爱丽丝和其他人拒绝公关并要求改变。 Bob添加了新的提交
* !fixup Added feature foo
* !fixup Added feature bar
* cosmetic change
他们又不高兴,他们要求更多改变,所以鲍勃生气了
* Again some change, please accept my PR
* Damned, I forgot this...
最后我们有一些人都同意的东西,但我们有嘈杂的提交。所以还有三个选择:
rebase -i
和push -f --force-with-lease
(但公关会发生什么?)rebase -i
然后创建一个新的PR。什么是最佳选择?
P.S。 squash
不是一个选项,因为我们希望rebase
提取请求,并保留包含foo
,bar
和延迟问题修复的初始三次提交。
答案 0 :(得分:1)
第二个选项看起来不错。 pull请求将使用rebase -i
操作中的新提交进行更新,替换之前的提交。这些新提交将在拉取请求的最后一条评论之后出现,这使评论者知道有新的提交需要审核(至少检查它是否与以前相同)。