为什么在GitHub中合并拉取请求会创建重复提交?

Mar*_*ang 6 merge github pull-request

在我的公司,我们要求开发人员feature在合并之前压缩分支机构的提交develop.一旦被压缩,开发人员就会推送到GitHub并登录到GitHub以创建一个拉取请求.

当合并拉取请求时,我们最终会看到分支历史记录中的两个提交develop:

  1. 提交说"合并拉请求"
  2. 来自feature分支的单一,压扁的提交

为什么会这样?我们怎样才能避免呢?我已经阅读了关于避免"合并提交地狱"的类似问答,但我的目标是使用GitHub UI来创建,跟踪和讨论拉取请求.

Xio*_*iov 7

您看到的提交是合并提交 ; 一般来说,这些都是由git在你进行非快进合并时自动创建的,但你也可以强迫一个人永远创建.这就是GitHub在您使用合并按钮时所做的事情.

如果您不想进行合并提交,那么您需要将提交添加到master而不是使用合并按钮.在GitHub Web UI中无法执行此操作.

编辑:GitHub现在已经在他们的网络用户界面中添加了壁球和合并以及改组和合并功能:

在此输入图像描述

  • 当您查看 [历史树视图](http://stackoverflow.com/q/5382255/120999) 时,合并提交更有意义,遗憾的是 GitHub 没有提供。我喜欢 GitHub,但随着时间的推移,我花越来越多的时间在终端中使用 `git` 工具而不是它们提供的“漂亮”视图,因为当你尝试做某事时它不可避免地最终变得更加混乱除了稍微基本的操作。 (2认同)