Git 合并两个不同的仓库
场景:有一个系统基础脚手架,很多系统都在这个脚手架基础上开发,但是有时候这个脚手架也会更新迭代,这个时候需要把脚手架合并到已经开发系统中来,而且脚手架和现有系统不再一个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/lfzm/p/10681412.html
【版权声明】 作品来自于长沙.NET技术社区成员【阿凌】,有兴趣了解长沙.NET技术社区详情,请关注公众号【DotNET技术圈】,作品版权归作者和博客园共有,作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。
Git 合并两个不同的仓库的更多相关文章
- git合并两个不同的仓库
目前开发是2个仓库,线上仓库online_a(对应的branch分支为online),测试环境online_b(对应的branch分支为demo),测试环境需要时刻保持onine_a上的最新稳定稳定代 ...
- git 合并两个仓库
我有两个仓库,一个是gitbook在写一本 一个是放在github的垃圾,这个是我想要开个人网站,但是做的还是不行https://github.com/lindexi/lindexi.github.i ...
- 如何用 Git 合并两个库,并保留提交历史
转载自 https://segmentfault.com/a/1190000000678808 背景 一个中型规模项目,开始规划时就打算采用 C/S 架构,后端是单纯的 API 服务,前端在 Web ...
- Git 合并两个分支内容
1,将开发分支代码合入到master中 git checkout dev #切换到dev开发分支 git pull git checkout master git merge dev #合并dev分支 ...
- git 合并两个分支的某个文件
软件开发基本都是多个feature分支并行开发,而在上线前有可能某个分支的开发或测试还没有完成,又或者是产品调整,取消了该分支功能的上线计划,我们在release前不合并该分支即可,然而如果该分支中的 ...
- 合并两个git仓库
现有两个git仓库ekt_zy.ekt_zijian,需要把ekt_zijian项目中的代码合并到ekt_zy项目中. 1 将ekt_zijian作为远程仓库.添加到ekt_zy中,设置别名为ziji ...
- Git提交到多个远程仓库(多看两个文档)
Git提交到多个远程仓库(多看两个文档) 一.总结 一句话总结: 二. Git提交到多个远程仓库(多看两个文档) 有两种做法,先看第一种 一.通过命令行进行操作 例如我有下面两个仓库: Mybatis ...
- git合并不同仓库下的分支
1.把lib合并到pro $ git remote -v origin git@192.168.1.1:lib.git (fetch) origin git@192.168.1.1:lib.git ( ...
- Git合并不同url的项目
本文由云+社区发表 作者:工程师小熊 摘要:为了让项目能实现Git+Gerrit+Jenkin的持续集成,我们把项目从Git上迁移到了Gerrit上,发现有的同事在老Git提交代码,因为Gerrit做 ...
随机推荐
- Python基础学习七 网络编程
主要应用urllib和requests模块 urllib模块返回类型为bytes,需要数据类型转换:requests就方便很多. 例子1:发送post请求 url = 'http://api.nnzh ...
- wince驱动开发入门
因为课题前期调研没做好,用的CPU板卡和数据采集卡来自两个部门.加上买的是裸板,自己定制的OS,技术支持不爱搭理.所以给的AI板卡的驱动一直装不上,自己在郁闷中寻找答案,就扎进了wince驱动的知识库 ...
- Spring整合web项目原理
- jQuery基础教程-第8章-002Adding jQuery object methods
一.Object method context 1.We have seen that adding global functions requires extending the jQuery ob ...
- 解决error C2365
今天把一个FILE_BOTH_DIRECTORY_INFORMATION结构的变量,愣是写成了“enum”枚举....然后出现error C2365错误. 在CSDN上看到别人遇到问题,有人回复了“如 ...
- 用conda创建一个tensorflow 虚拟环境
创建your——user——name = tensorflow 的虚拟环境 xinpingdeMacBook-Pro:~ xinpingbao$ conda create -n tensorflow ...
- CF 1091E New Year and the Factorisation Collaboration
昨晚Good Bye 2018D题没做出来,车翻大了…… 官方题解 传送门 初赛知识:一个无向图所有顶点度数之和为偶数.然而这东西还有一个高端的名字:Handshaking lemma 但是 ...
- python3--列表生成式
# Auther: Aaron Fan # 原始的写法:a = []for i in range(10): a.append(i*2)print(a) # 用列表生成式完成上面的写法:a = [i*2 ...
- js 二维数组排序sort()函数
一.按数值排序 var arr = [[1, 2, 3], [7, 2, 3], [3, 2, 3]]; arr.sort(function(x, y){ return x[0] – y[0];}) ...
- Java 数据结构之双链表
package Linked; public class Mylinked { private Node first;//链表的第一个节点 private Node last;//链表的最后一个节点 ...