一、为什么要做分支管理:

1.发了版本需要做一个版本分支,如果此版本出了bug 可以切换到此版本修改bug,以后可能在某一个版本节点上延伸出新的分支

2.需要一个开发版的分支用来开发新的功能,因为很多情况下都是开发没开发完又发现了紧急bug,这个时候不能用当前的代码马上打包修复bug

二、之前搭好了一个gerrit 代码服务器,只记录一下创建分支的流程

1.创建分支

直接去gerrit 界面创建分支,名字按照自己的需求填写,初始化版本->指定一个master 提交的版本SHA1

2.创建完成之后,本地执行 git pull

git branch -a 查询版本分支列表

3.切换到指定分支

4.分支里面创建一个文件 然后推上去

5.切换到主分支可以看到并没有自己提交的那个文件,切换到分支之后有自己创建提交的文件!

三、开创了分支,当改了bug 或者有新的功能就需要合并到主分支里了

1.切换到主分支

git checkout master

2.将分支合并到主分支

git merge branch_2

四、不小心在稳定的分支上改了大量的代码,提交了怕出问题,不提交又觉得白干了。

在tortoisegit 上commit 的时候发现可以提交到一个新的分支上,于是就有一个想法,提交到新分支上,然后跟dev 分支合并,这样就不会改变稳定版的分支。

1.首先提交的时候勾选new branch 就会让你输入新分支的名称

2.切换到开发的那个分支 git chekcout dev

3.合并两个分支 git merge newbranch

4.发现冲突了,再用 tortoisegit 解决冲突,再次提交

5.发现提交成功了,但是gerrit服务器上合并不了

6.git pull --rebase,让自己处于最新的节点上,这样code merge在最新的代码之上。之前没用过这个指令有点慌,

ctrl +c 打断了

7.此时想再pull 或者push 的时候发现都不行了

有点慌->百度了一下

git am --abort

这样又进入当前分支了

8.查了一下 git pull --rebase 好像是我需要的,于是继续

说是要先解决冲突然后 git rebase --continue

9.解决冲突之后 git rebase --continue 然后就可以了

10.登录到gerrit服务器 发现可以合并了

11.确定没问题了就可以删掉本地的那个分支了

五、在某个发布的分支修改了bug,将它合并到其他分支

1.git log 找到提交的commit id

2.切换到指定分支 git switch 分支

3.git cherry-pick  commit id

4.发现冲突  我是用tortoiesgit 编辑冲突解决冲突

5.git cherry-pick --continue  会进入 vim 界面 按照 ESC键 再按两下大写的Z 退出vim 就搞定了

Gerrit 创建分支相关推荐

  1. git创建分支并推到远端

    为方便阅读,2020年补充内容: 首先介绍背景: 程序员使用master分支,QA使用qamaster分支.这样对于测试来说相当于"版本冻结".当我接手某项目时,发现竟然没有QA专 ...

  2. AndroidStudio git 提交代码,创建分支,合并分支,回滚版本,拉取代码

    主要有: 提交代码,创建分支,合并分支,回滚版本,拉去代码 1 首先电脑中下载git 2 新建的项目把.git 仓库放到项目总中as 工具的右下角 会显示 Git:master 点击有一个弹框如下 然 ...

  3. git 创建分支,更改并提交

    为什么80%的码农都做不了架构师?>>>    获取远程代码,创建分支: git checkout -b tmp 编写代码 git add; git stash; 保存工作栈 跟新分 ...

  4. Eclipse下svn的创建分支/合并/切换使用

     1.创建分支 创建分支实际上就是将程序copy一份到指定的分支目录,如下图示: 在项目名称上点击右键,弹出菜单,选择"Team",再选择"Branch/Tag" ...

  5. svn无法创建分支的解决方法

    创建分支时出现错误 Access to '/svn/project01/!svn/rvr/18022/trunk' forbidden 解决方法: 找到project01仓库的根目录,假如在d:\sv ...

  6. 基于当前分支的某一个commit号创建分支

    基于当前分支的某一个commit号创建分支 git checkout -b dev2 <branch id>

  7. Git/码云上多人协作,创建分支,上传修改

    1.为项目创建分支 可直接在网页上进行管理操作 2.克隆一个项目 git clone https://gitee.com/xxxxx/xxx.git 3.创建本地分支 cd 进入目录文件夹 git c ...

  8. 11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

     1 执行以下案例: 某研发团队2011年初开发了一款名为Apollo的信息系统,目前已发布v1.0版本.此项目初期已有部分基础代码, 研发团队再此基础代码上经过3个月的努力发布了一个功能相对完备 ...

  9. svn服务器创建分支原理,svn 创建分支、合并分支、以及报错处理

    Q:为什么要分支? A:项目开发一个迭代之后,在开发一个迭代之前,一般都是需要给项目设置分支,独立保存上一个版本的代码.这样有什么好处呢?比如说:开始下一个迭代,开发到一半的时候,发现上一个版本有一个 ...

最新文章

  1. c语言 strlower 将所有的字母转化为小写字母
  2. 【剑指offer-Java版】38数字在排序数组中出现的次数
  3. python【力扣LeetCode算法题库】6-Z 字形变换
  4. Android—— ScrollView 与 ListView 滑动冲突处理
  5. div固定在浏览器顶部_手写几种常见的css布局,1垂直两栏左边固定右边自适应,垂直3栏左右固定中间自适应...
  6. Flashdevelop 在Project 上增加 ComboBox
  7. 支付宝通知侦听器是什么_使用SWTEventHelper清除SWT侦听器通知
  8. 2 JVM 运行机制
  9. maven 打包部署时访问远程仓库中没有的jar
  10. VC++实现全局钩子勾住消息对话框
  11. sourceinsight4.0安装破解( 内含sublime text配色方案)
  12. 进度图绘制十大注意事项
  13. 2022自编译最新稳定版newifi3固件
  14. word给图片插入题注并在文中交叉使用
  15. pr剪辑打开多个项目_Pr:用Audition协作处理音频
  16. git上传提示鉴权失败的问题
  17. submit 和 button的区别
  18. SQL Server 数据库中数据库表导出为Excel表格
  19. 64位 gnuwin32_linux系统中32位和64位的区别?
  20. CSS实现水平垂直的几种方法

热门文章

  1. 委派模式(Delegate Pattern)
  2. 单源最小路径BellMan Ford算法
  3. redis过期key的清理/删除策略
  4. 小米笔记本 触摸板失灵 鼠标可以正常使用
  5. oppo锁屏断网设置在哪里呀_oppo手机锁屏设置在哪里?
  6. AUTOCAD无法另存的解决办法
  7. 提高工作效率的方法有哪些
  8. 全球及中国透析器膜行业市场竞争与投资战略规划研究报告2022-2028年
  9. 数据说话:推荐MySQL类的一些图书
  10. Java面试常见问题整理(项目阶段 附答案)