gerrit提交代码

gerrit提交代码

【天下无难事,只要肯放弃】【都是自己理解的有误请指出】...................

一. 为什么写这篇文章

如果只看内容,请跳过这一节

原因主要有以下几个:

  1. 公司用到了,需要了解一下
  2. 一直对git rebase合并和git merge的合并简单学一下
  3. 任性,写一下

二. 过程

由于我的东西都是我自己的理解,怎么使用是按照在公司的使用方式

希望理解不足的还请大家指出

接下来,我将用以下几个点去讲

  • 含有git merge 的提交做法
  • 含有git rebase 的提交做法
  • git merge 和 rebase的简单理解
  • 自我总结

三. 含有git merge 的提交做法

平时自己写代码,提交代码时都是用的下面的流程

- 在master确定的分支操作
# 1.文件add
git add [file]
# 2.文件入库commit
git commit -m"[注释]"
# 3.获取更新的代码
git pull # 若有别人的提交,则会产生一条merge的commit
# 4. 若有冲突则重复 1[add],2[commit],3[pull]
# 5. 若无冲突,推到远程仓库
git push

- 若有多个分支dev 开发 master提交
# 在dev进行上述1[add],2[commit]
# 切换分支需要保证dev的工作空间是干净的
git checkout master
# 更新master分支的代码
git pull
# 合并dev的代码
git merge dev
# 若有冲突按照上述4操作
# 若无冲突,推到远程仓库
git push

四. 含有git rebase 的提交做法

由于使用到了gerrit有code viewer审核代码,所以不能直接推送到远程的master分支

这里我们推送到gerrit中的/refs/head/master分支
新做法:【文章的第二个版本】【2018-09-29】

- 新来了一个需求
# 创建一个开发分支dev,并切换到相应的分支
git checkout -b dev
# 在dev进行开发
# 开发完毕则使用
git pull --rebase origin master
# 若有冲突,则修改每个文件,修改后并如第三点的1[add]
# 如 xxx.txt 冲突,用编辑器进行修改,add进行添加
vi xxx.txt 
git add xxx.txt
# 若还有冲突
git rebase --continue
# 继续修改冲突并add
# 改完冲突后[也就是没有冲突]
# 将修改推入refs/head/master分支,等待code viewer的审查
git push origin head:refs/head/master
# 审查通过后,回到master分支,更新代码
git checkout master
git pull
# 则可见dev推送的代码

老做法:【文章的第一个版本】【2018-09-27】
如今操作如下

- 新来了一个需求
# 创建一个开发分支dev,并切换到相应的分支
git checkout -b dev
# 在dev进行开发
# 开发完毕则,如第三点中的1[add],2[commit]
# 切换至master分支,代码拉取到最新
git checkout master
git pull
# 切换至dev分支,进行代码衍合
git checkout dev
git rebase master
# 若有冲突,则修改每个文件,修改后并如第三点的1[add]
# 如 xxx.txt 冲突,用vi进行修改,add进行添加
vi xxx.txt 
git add xxx.txt
# 若还有冲突
git rebase --continue
# 继续修改冲突并add
# 改完冲突后[也就是没有冲突]
# 将修改推入refs/head/master分支,等待code viewer的审查
git push origin head:refs/head/master
# 审查通过后,回到master分支,更新代码
git checkout master
git pull
# 则可见dev推送的代码

五. git merge 和 rebase的简单理解

  • 在我看来,git merge操作比较暴力直接合并,若无冲突会生成一条新的commit,有冲突则修改过后进行commit,也统一会生成一条新的commit
  • 对于git rebase的操作不会将分支的点点滴滴推进去,若有冲突,解决后直接提交,不会产生一条新的commit
  • git pull 若有本地的commit,而且有其他人的提交代码,那么会形成一个新的commit,推送的时候包含了自己未推送的commit和合并的commmt
  • git pull --rebase 若有本地的commit,而且有其他人的提交代码,需要通过[git add] [git rebase --continue]来解决问题,从而推送时只会包含自己已经commit的版本

六. 自我总结

  • 不太会写东西,只写到了自己用到的东西,自己用到的方式,可能里面还有很多不足
  • 在用到了这些东西之后,发现确实有点意思
  • 保持学习的态度吧
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,492评论 6 513
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,048评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,927评论 0 358
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,293评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,309评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,024评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,638评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,546评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,073评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,188评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,321评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,998评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,678评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,186评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,303评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,663评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,330评论 2 358

推荐阅读更多精彩内容

  • 一、 Git 常用命令速查 git branch 查看本地所有分支 git status 查看当前状态 git c...
    LOVE_晴天阅读 2,327评论 0 10
  • git branch 查看本地所有分支 git status 查看当前状态 git commit 提交 git b...
    猿万阅读 5,057评论 1 45
  • 又是一年父亲节, 那悠远的思念还在风中飘行。 他是一颗苍老的大树, 经过岁月细心刻画的年轮。 他让烈日形同虚设, ...
    无所谓hero阅读 539评论 0 0
  • “纸上的花是你画的吗”?那走过来的那人问 “不,猪是我杀的” ——我手指着打开的剧本 舞台下面的眼睛们 愣愣地 如...
    李野航阅读 390评论 0 0
  • 1.命令输入格式 在mysql环境下,每一次输入命令,都要以分号“;”为结尾,如果忘记输入而直接回车,就会出...
    JRlu阅读 431评论 0 0