场景:有一个系统基础脚手架,很多系统都在这个脚手架基础上开发,但是有时候这个脚手架也会更新迭代,这个时候需要把脚手架合并到已经开发系统中来,而且脚手架和现有系统不再一个Git仓库中,这时候需要合并两个不同的仓库的代码。

第一步. 下载需要合并的分支

要把需要合并的分支代码 clone到本地。

$ git clone https://gitee.com/alingfly/ASF_Test.git

第二步. 添加需要合并远程仓库

$ git remote add base https://github.com/AClumsy/ASF.git

将 base作为远程仓库,添加到 本地仓库(origin)中,设置别名为 base(自定义,这里我是为了方便区分仓库名)

第三步. 把base远程仓库中数据抓取到本仓库

$ git fetch base
From https://github.com/AClumsy/ASF
* [new branch] master -> base/master

第四步. checkount切换到base分支上,命名为 asf

$ git checkout -b asf base/master
Switched to a new branch 'asf'
Branch 'asf' set up to track remote branch 'master' from 'base'. //查看一下所有分支
$ git branch
* asf
asf_test

由于我们需要把asf分支合并到asf_test分支中去,我们在切换到asf_test分支。

$ git checkout asf_test

第五步. 合并

$ git merge asf

合并完成之后会出现很多冲突,需要在本地代码中解决冲突,然后在提交到ASF_Test中去。

$ git push origin asf_test //上传到远程库

fatal: refusing to merge unrelated histories 错误

在执行 merge 合并的时候出现 fatal: refusing to merge unrelated histories 错误。这个错误可能会在 git pull 或者 git push 中都有可能会遇到,这是因为两个分支没有取得关系。

解决方案

在操作命令后面加 --allow-unrelated-histories

$ git merge asf --allow-unrelated-histories

总结:(引用学习文章的总结)

大致思路是伪造远程的asf仓库为asf_test的一个分支,然后合并进来;

若是文件有冲突、或要建立子目录,建议在asf中先解决,再进行如上操作。

引用:https://www.cnblogs.com/hongdada/p/7573923.html


作者:阿凌

出处:https://www.cnblogs.com/lfzm/p/10681412.html

【版权声明】 作品来自于长沙.NET技术社区成员【阿凌】,有兴趣了解长沙.NET技术社区详情,请关注公众号【DotNET技术圈】,作品版权归作者和博客园共有,作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

Git 合并两个不同的仓库的更多相关文章

  1. git合并两个不同的仓库

    目前开发是2个仓库,线上仓库online_a(对应的branch分支为online),测试环境online_b(对应的branch分支为demo),测试环境需要时刻保持onine_a上的最新稳定稳定代 ...

  2. git 合并两个仓库

    我有两个仓库,一个是gitbook在写一本 一个是放在github的垃圾,这个是我想要开个人网站,但是做的还是不行https://github.com/lindexi/lindexi.github.i ...

  3. 如何用 Git 合并两个库,并保留提交历史

    转载自 https://segmentfault.com/a/1190000000678808 背景 一个中型规模项目,开始规划时就打算采用 C/S 架构,后端是单纯的 API 服务,前端在 Web ...

  4. Git 合并两个分支内容

    1,将开发分支代码合入到master中 git checkout dev #切换到dev开发分支 git pull git checkout master git merge dev #合并dev分支 ...

  5. git 合并两个分支的某个文件

    软件开发基本都是多个feature分支并行开发,而在上线前有可能某个分支的开发或测试还没有完成,又或者是产品调整,取消了该分支功能的上线计划,我们在release前不合并该分支即可,然而如果该分支中的 ...

  6. 合并两个git仓库

    现有两个git仓库ekt_zy.ekt_zijian,需要把ekt_zijian项目中的代码合并到ekt_zy项目中. 1 将ekt_zijian作为远程仓库.添加到ekt_zy中,设置别名为ziji ...

  7. Git提交到多个远程仓库(多看两个文档)

    Git提交到多个远程仓库(多看两个文档) 一.总结 一句话总结: 二. Git提交到多个远程仓库(多看两个文档) 有两种做法,先看第一种 一.通过命令行进行操作 例如我有下面两个仓库: Mybatis ...

  8. git合并不同仓库下的分支

    1.把lib合并到pro $ git remote -v origin git@192.168.1.1:lib.git (fetch) origin git@192.168.1.1:lib.git ( ...

  9. Git合并不同url的项目

    本文由云+社区发表 作者:工程师小熊 摘要:为了让项目能实现Git+Gerrit+Jenkin的持续集成,我们把项目从Git上迁移到了Gerrit上,发现有的同事在老Git提交代码,因为Gerrit做 ...

随机推荐

  1. 前端工作准备-foxmail登陆失败汇总

    foxmail 管理邮箱账号的一个工具软件, 但是在登陆的时候总是遇到明明账号密码没有问题,却总是报错,这里我登陆的时候的集中解决方法总结下: pop和imap 是邮箱的两种协议,大多选imap协议, ...

  2. jqurey datatable tableTools 自定义button元素 以及按钮定义事件

    版本 1.10.4 "dom": 'T<"clear">lfrtip', "tableTools": { //"sSw ...

  3. 21-从零玩转JavaWeb-多态详解

    配套视频详解 多态思想 eclipse快捷键设置 多态的好处 多态方法调用 instanceof关键字 多态中字段注意点 一.什么是多态   既然子类是一种特殊的父类   那么我们可不可以认为   狗 ...

  4. Gym 101606 F-Flipping Coins(概率dp)

    参考博客:http://www.cnblogs.com/kang000/p/8571071.html  (这篇博客写的真的走心,ORZ) 题意有n个硬币排成一排,开始的时候所有的硬币都是正面朝下,你必 ...

  5. hdu3530 Subsequence

    题意:There is a sequence of integers. Your task is to find the longest subsequence that satisfies the ...

  6. 数字图像处理实验(14):PROJECT 06-01,Web-Safe Colors 标签: 图像处理MATLAB 2017-05-27 20:45 116人阅读

    实验要求: Objective: To know what are Web-safe colors, how to generate the RGB components for a given jp ...

  7. WEB前端--CSS

    一.认识CSS 1.概念 CSS(Cascading Style Sheet,层叠样式表),可以将网页制作的更加绚丽多彩.它可以有效的对页面的布局.字体.颜色.背景和其它效果实现更加精确的控制. 2. ...

  8. 30.MIN() 函数

    MIN() 函数 MIN 函数返回一列中的最小值.NULL 值不包括在计算中. SQL MIN() 语法 SELECT MIN(column_name) FROM table_name 注释:MIN ...

  9. eclipse——配置maven插件

    Step 1 配置installations installations:指定Maven核心程序的位置  从本地磁盘中找到本地maven的位置 Step 2 配置user settings user ...

  10. MVC值提供组件ValueProvider的继承关系

    MVC请求过程中中各组件调用顺序:值提供组件(IValueProvider)->模型绑定组件(IModelBinder)->模型验证组件 值提供组件接口 public interface ...