在我的公司,我们要求开发人员在合并到feature
之前压缩develop
分支上的提交。一旦被压缩,开发人员就会推送到GitHub并登录到GitHub以创建一个拉取请求。
当合并拉取请求时,我们最终会在develop
分支的历史记录中看到两个提交:
feature
分支为什么会这样?我们怎样才能避免呢?我已经阅读了类似的Q&A about avoiding "merge commit hell",但我的目标是使用GitHub UI来创建,跟踪和讨论拉取请求。
答案 0 :(得分:7)
您看到的提交是合并提交;一般来说,这些都是由git在你进行非快进合并时自动创建的,但你也可以强迫一个人永远创建。这就是GitHub在您使用合并按钮时所做的事情。
如果您不想进行合并提交,那么您需要在主设备上选择提交而不是使用合并按钮。在GitHub Web UI中无法做到这一点。
修改:GitHub现已在其网络用户界面中添加了squash and merge和rebase and merge功能: