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

如何实现Git跨仓库合并并仅推送到目标仓库的自动化工作流?

基于Git的跨仓库年度合并方案(仅推送至StableX)

1. 配置上游远程仓库

先把OpenX的仓库设为StableX的上游源,方便后续拉取更新:

  • 进入本地StableX仓库目录,执行:
    git remote add upstream REPO1的克隆地址
  • 每次要合并前,先拉取OpenX的最新代码:
    git fetch upstream

2. 创建临时合并分支(保护主分支)

不要直接在主分支上操作,用临时分支处理合并,避免破坏稳定代码:

  • 切换到StableX的主分支(比如main):
    git checkout main
  • 创建并切换到临时合并分支:
    git checkout -b merge-openx-stablex

3. 执行合并并处理冲突

将OpenX的最新代码合并到临时分支,手动解决冲突:

  • 合并OpenX的主分支(如果OpenX用的是其他分支,替换成对应名称):
    git merge upstream/main
  • Git会自动合并无冲突文件,有冲突的文件会被标记,你需要打开这些文件手动调整——优先保留StableX的稳定逻辑,同时整合OpenX的新功能代码
  • 冲突解决后,将修改的文件加入暂存:
    git add 已解决冲突的文件名
  • 完成合并提交:
    git commit(Git会自动生成合并信息,你可以按需修改)

4. 验证合并结果

合并后必须做测试,确保功能正常:

  • 本地运行项目测试脚本,或手动验证核心功能,确认没有引入新问题

5. 合并到主分支并推送至StableX

确认没问题后,将合并结果同步到StableX主分支并推送:

  • 切换回StableX主分支:
    git checkout main
  • 合并临时分支的内容:
    git merge merge-openx-stablex
  • 推送到StableX的远程仓库(REPO2):
    git push origin main

6. 清理临时分支(可选)

确认合并完全无误后,可删除临时分支:

  • git branch -d merge-openx-stablex

额外优化建议

  • 把重复执行的命令写成Shell脚本,比如创建merge_openx.sh,包含fetch、创建分支、合并的步骤,每年只需运行脚本,再手动处理冲突即可,减少重复操作
  • 每次合并前记得拉取StableX远程的最新代码:git pull origin main,避免本地分支落后于远程

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 00:15:30