内容简介:作者:工程师小熊摘要:为了让项目能实现Git+Gerrit+Jenkin的持续集成,我们把项目从Git上迁移到了Gerrit上,发现有的同事在老Git提交代码,因为Gerrit做了同步,在Gerrit上有新提交的时候就会刷新老git,这样就会把他提交的代码冲掉。这个时候我就必须要在两个相似项目之间合并提交了。
作者:工程师小熊
摘要:为了让项目能实现Git+Gerrit+Jenkin的持续集成,我们把项目从Git上迁移到了Gerrit上,发现有的同事在老Git提交代码,因为Gerrit做了同步,在Gerrit上有新提交的时候就会刷新老git,这样就会把他提交的代码冲掉。这个时候我就必须要在两个相似项目之间合并提交了。
步骤
将老Git url加到我们新Git的本地
git remote add [shortname] [url]
查看
- 使用命令
git remot -v
查看远程仓库的情况 - 可以看到此处我们有三个远程仓库分别名为
gerrit
、gitoa_web
、origin
同步代码
- 使用命令
git fetch gitoa_web
刷新远程仓库到本地 - 字符串
gitoa_web
指代对应的仓库地址了.比如说,要抓取所有gitoa_web
有的,但本地仓库没有的信息,可以用
合并项目
- 使用命令
git merge gitoa_web/master
合并项目 -
gitoa_web
是指代仓库,
master
指代分支,当然如果有需要也可以合并别的分支过来
报错
- 发现不同email地址错误不能成功提交
- 因为这个
commit
不是我的
修正错误
- 把email地址更新成我的
- 再提交就成功了
小结
知识点:
git merge git fetch 仓库名 git remot -v
本次我们对以下命令加深了理解
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
过来,有兴趣的朋友可以自己尝试。
附
此文已由腾讯云+社区在各渠道发布
获取更多新鲜技术干货,可以关注我们 腾讯云技术社区-云加社区官方号及知乎机构号
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- .net – Visual Studio 2008:如何避免项目文件合并地狱?
- 分组字符合并SQL语句 按某字段合并字符串之一(简单合并)
- git 的合并原理(递归三路合并算法)
- git 合并策略
- 算法 - 合并若干有序文件
- Git合并提交
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。