摘要:为了让项目能实现Git+Gerrit+Jenkin的持续集成,我们把项目从Git上迁移到了Gerrit上,发现有的同事在老Git提交代码,因为Gerrit做了同步,在Gerrit上有新提交的时候就会刷新老git,这样就会把他提交的代码冲掉。这个时候我就必须要在两个相似项目之间合并提交了。
git remote add [shortname] [url]
将老Git url加到我们新Git的本地 git remot -v
查看远程仓库的情况gerrit
、 gitoa_web
、origin
git fetch gitoa_web
刷新远程仓库到本地gitoa_web
指代对应的仓库地址了.比如说,要抓取所有 gitoa_web
有的,但本地仓库没有的信息,可以用git merge gitoa_web/master
合并项目gitoa_web
是指代仓库,master
指代分支,当然如果有需要也可以合并别的分支过来
commit
不是我的在上一节我们
git remote add [shortname] [url]
将老Git url加到我们新Git的本地git fetch gitoa_web
刷新远程仓库到本地git merge gitoa_web/master
将老项目合并到新项目上再提交这种在新项目的master上,合并老项目的方式会存在问题(就是如果不是自己的commit
会过不了push
),后来我遇到了项目进行迁移的需求,经过测试只要反过来,位于老的项目上,push
到新的项目就不会出现这样的问题了。
如下
git clone 老项目
git remote add gerrit 新项目git链接
cd 项目名
此时我们就位于已有代码git push gerrit master
此时就是把已有代码推于已有项目思考:为什么会出现这样的问题呢?
知识点:
git merge
还可以合并其他项目的到本项目git fetch 仓库名
可以指定同步哪个仓库git remot -v
查看本地有哪些远程仓库的情况,包含各个仓库url本次我们对以下命令加深了理解
git remote #不带参数,列出已经存在的远程分支
git remote -v #(-v是–verbose 的简写,取首字母)列出详细信息,在每一个名字后面列出其远程url
git remote add [shortname] [url] #添加远程仓库
git fetch origin #字符串 origin 指代对应的仓库地址了.比如说,要抓取所有 origin 有的,但本地仓库没有的信息,可以用
ps: 这里git remote add
以后,我认为还能用cherry-pick
来加不同仓库的commit
过来,有兴趣的朋友可以自己尝试。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有