警告:我对 git 和 GitHub 都很陌生。
因此,在我当前的设置中,我的团队使用 git flow Hotfixes(通常由 GitKraken 或 IntelliJ 等图形工具启动和完成)进行更改,这些更改必须合并到两个分支中并在两个分支中推送到上游。例如,流程将是:
我们现在正在考虑将我们的代码移动到 GitHub 并希望开始使用 Pull Requests,原因有以下几个:
但是在修补程序的情况下,我不确定该怎么做,因为我正在合并到两个分支,但它确实是一个“ Action ”,所以手动创建两个拉取请求似乎很奇怪,特别是因为我们当前流程中的步骤 4)是单击一下。
有没有聪明的方法来处理这个?我理想的情况是,在拉取请求上按下合并按钮只会合并到两者中,但这似乎不是一个可用的选项。
请您参考如下方法:
正如你所提到的,一个拉取请求只有 一个 目标分支,因此您将无法将修补程序推送到 master
和 develop
通过合并一个拉取请求。
我也很惊讶你提到你的步骤 #4 - 将修补程序分支合并到 master
和 develop
并插入上游 - 是一项行动。虽然从 hotfix
合并的可能性很大至master
不会遇到合并冲突,我不能对来自 hotfix
的合并说同样的话至develop
因为它可以在上次部署到生产环境后开始工作。
我的建议如下:
hotfix
创建一个 PR至master
并让某人查看它以验证修复 master
,从 hotfix
创建另一个 PR至develop
看看你是否遇到合并冲突如果您真的想走自动化路径,另一种解决方案是同时利用 GitHub Webhook 和 API。
Webhook 将允许您成为 notified when a PR is merged .您可以检查有效负载以确保基本分支以
hotfix/
开头目标分支是
master
.然后,您可以使用
create a new PR 的 API 对该事件使用react。来自同一个
hotfix
分支到
develop
.
这将涉及一些开发,而且这种努力可能不值得,因为通过 UI 创建 PR 仍然非常简单快捷。