警告:我对git和GitHub都还很陌生。

因此,在我当前的设置中,我的团队使用git flow修补程序(通常由图形工具(如GitKraken或IntelliJ)启动和完成)来进行更改,这些更改必须合并到两个分支中并在两个分支中向上游推送。因此,例如,流程为:

  • 大师那里获取最新信息
  • 启动修补程序
  • 提交更改
  • 将修补程序分支合并到master和develop中,并向上游推送

  • 我们现在正在考虑将代码移至GitHub,并出于以下几个原因开始使用Pull Requests:
  • CI挂钩可运行测试和填充
  • 用于放置与底层“问题”不直接相关的特定于代码的注释的位置
  • 避免了每个人都需要不断将最新的master / develop拉到其本地计算机,以便他们可以合并更改

  • 但是对于Hotfixes,我不确定该怎么做,因为我要合并为两个分支,但这确实是一个“ Action ”,因此手动创建两个请求请求似乎很奇怪,特别是因为当前流程中的步骤4)是一次点击。

    有解决这个问题的聪明方法吗?我的理想情况是按“合并请求”上的“合并”按钮将合并到这两者中,但这似乎不是一个可用的选项。

    最佳答案

    正如您提到的,“拉取请求”只有目标分支,因此您将无法通过合并一个“拉取请求”将修补程序同时推送到masterdevelop

    我也很惊讶您提到您的步骤4-将修补程序分支合并到masterdevelop并向上游推送-是一项 Action 。虽然从hotfixmaster的合并很有可能不会发生合并冲突,但是我不能说从hotfixdevelop的合并,因为自上次部署到生产以来就可以进行合并。

    我的建议如下:

  • hotfixmaster创建一个PR,并请某人对其进行审核以验证修复
  • 一旦将其合并到master中,请创建另一个从hotfixdevelop的PR,看看是否遇到合并冲突
  • 如果是这种情况,请解决合并冲突,以便PR最终处于要合并的状态,并请某人检查PR
  • 如果没有合并冲突,请让某人检查PR


  • 如果您真的想走自动化的道路,另一种解决方案是利用GitHub webhooks和API。

    Webhook将允许您成为notified when a PR is merged。您可以检查有效负载以确保基本分支以hotfix/开头,目标分支为master。然后,您可以通过使用API​​将create a new PR从相同的hotfix分支扩展到develop来对该事件使用react。

    这将涉及一些开发,并且可能不值得付出努力,因为通过UI创建PR仍然非常容易和快捷。

    关于github - 如何使用GitHub Pull Requests进行修复,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42229487/

    10-13 08:59