You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否在GitHub中将Hotfix分支同时合并至Develop和Main分支?

解决GitHub上GitFlow Hotfix分支同时合并到Main和Develop的问题

方案1:创建两个独立PR(最直接的官方方式)

GitHub PR确实只支持单目标分支,但你可以针对同一个Hotfix分支创建两个PR:

  • 第一个PR目标选main分支,走完审核、CI流程后合并,这符合GitFlow里Hotfix先修复生产分支的逻辑
  • 第二个PR目标选develop分支,同样走审核流程后合并
  • 如果合并main后develop出现冲突,直接在PR里解决冲突再合并就行,所有操作都在GitHub上完成,不用本地折腾,还能保留完整的PR审核记录

方案2:用GitHub Actions自动同步合并

如果不想手动开两个PR,可以写个简单的GitHub Action,实现Hotfix合并到main后自动同步到develop:

  1. 在仓库的.github/workflows目录下新建一个hotfix-sync.yml文件
  2. 写入以下配置(可按需调整):
name: Sync Hotfix to Develop
on:
  push:
    branches: [main]
jobs:
  sync:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0
      - name: Merge main to develop
        run: |
          git config user.name "GitHub Actions"
          git config user.email "actions@github.com"
          git checkout develop
          git merge main --no-ff
          git push origin develop

这个Action会在main分支有新推送时自动把main合并到develop,刚好匹配GitFlow中Hotfix合并到main后同步到develop的流程。如果遇到冲突,Action会失败,这时你可以手动在本地解决冲突后推送到develop,冲突处理建议手动操作更稳妥。

方案3:优化你当前的本地合并流程

如果你还是习惯本地操作,可以不用关闭PR:

  • 先在GitHub开一个目标为main的PR,走完审核后合并
  • 本地拉取最新的main和develop分支
  • 本地切换到develop,执行git merge main解决冲突后推送到远程
  • 若之前开了目标为develop的PR,PR会自动检测到合并完成,直接关闭即可

内容的提问来源于stack exchange,提问作者dontStayHere

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 12:24:54