合并两个不同的Git仓库
· 阅读需 2 分钟
问题背景
我们的公司维护着两个代码仓库,虽然它们的代码相同,但分别服务于不同的业务领域。时常,我们需要将仓库 A 中的优化措施迁移到仓库 B,以确保两者的同步和效率。在以下说明中,我将使用“AB”作为示例名称,但在实际操作中,您可以根据需要更换相应的名字。
B 仓库迁移到 A 仓库
在 A 仓库,添加 B 仓库的远程仓库地址
git remote add B ssh://git@gitlab.xxxx.git
获取远程 B 仓库的数据
git fetch other
创建并且检出新的分支
git checkout -b dev B/dev
把该分支提交到 A 仓库的远程
git push orange dev
接下来,这个仓库就多了其他仓库的 dev 分支,你可以进行 rebase、merge、优选等操作就非常方便了。
注意:
- 如果你的当前仓库已经有一个名为
dev
的分支,上述命令会失败。在这种情况下,你可能需要选择一个不同的分支名或者首先删除现有的dev
分支。 - 你现在有了一个远程链接名为
other
,你可以在以后使用它来获取或推送数据到该远程仓库。如果你不再需要这个链接,可以使用git remote remove other
来删除它。