审核评论后,Github squash在拉取请求中从Web界面提交?

时间:2016-03-11 19:13:03

标签: git github workflow

我们说我有5次提交的提交历史记录。我知道我可以在制作拉取请求时在本地重新提交我的提交,然后将它们重新设置为单个提交。

一个常见的用例是:

  • 进行本地提交,处理功能
  • 壁球提交
  • 提出请求
  • 收到评论意见
  • 适当更新公关

我可以在我的机器上本地执行此操作,然后再次推送我的更改(使用-f,因为rebase使其与远程控制器不同步)。这有点烦人。

但是,这需要我每隔时间进行一次rebase 时间来回复评论 - 我有什么方法可以通过网络界面进行此操作吗?

或许我的工作流程有误,我是否应该修改我的每一条评论评论"直接提交到主PR提交?

1 个答案:

答案 0 :(得分:7)

您不必再在本地进行任何变基/挤压:只需将您的提交推送到PR分支。

原始回购的所有者,如果他/她选择,将为您压缩这些提交(自2016年3月起):

https://help.github.com/assets/images/help/pull_requests/squash-and-merge.png

参见" Squash your commits"和the documentation:它确实允许新的工作流程,既包括贡献者,也包括原始仓库的维护者。

正如我在下面评论的那样:它将像PR的合并一样实施:

  • 如果它没有冲突,则会自动创建合并(或此处merge --squash:参见" In git, what is the difference between merge --squash and rebase?")。
  • 如果存在任何冲突,则不会创建合并,并且维护者可以选择暂时拒绝PR,要求贡献者执行压缩提交和修改PR的工作。

这非常类似于现在存在的,除了GitHub已将--squash添加到其merge命令中。没什么。