开发与测试整体过程中的Git分支merge流程

         

Git分支merge之开发流程

首先在Gitlab上有个仓库存储着原始的项目代码,其中包含一个叫master的分支。然后可能按功能进行分配,由不同的开发人员分别将master分支拉出来改作其新的开发分支,比如叫func1分支、func2分支之类的名字。

对应的QA负责测试各自对应开发所写的功能模块,假设有QA两名,分别为tester1和tester2,当他们接到各自开发dev1和dev2写的两个分支func1分支和func2分支后:

1. 如果二人在不同的环境上测试,则分别拉出来master分支成为其新的test分支——test1分支和test2分支,并将对应的func1和func2分支代码与自己建立的test1和test2分支代码进行merge;

2. 如果两人共用一个环境进行测试,且事先没有建立test分支,则首先拉出来master分支成为新的test分支,然后将func1和func2分支的代码与test分支的代码进行merge。

至此测试环境上已经有merge好的可供测试的代码分支,我们可以对测试环境进行部署并进行第一轮测试。

Git分支merge之测试流程

第一轮测试过程中,如果发现问题,提交jira,跟踪bug,开发修改代码后更新分支,QA要将新的func分支代码merge进其test分支后再进行测试。以此循环下去,直到第一轮测试结束并确认无误后,由专门的人员(非开发人员)将各个func分支代码merge到一个总的dev分支(若merge过程中遇到冲突则由开发进行解决),然后将dev分支给QA进行第二轮测试。

第二轮测试过程中,如果发现问题,提交jira,跟踪bug,开发修改代码后更新其负责的相应的func分支并告诉专门的人员(非开发人员)将其func分支再merge到dev分支中,然后将dev分支发给QA,QA将该新的dev分支merge到其test分支后再进行测试,如此往复。

第三轮确认测试,第二轮测试结束后,确认没有问题了,将由专门的人员(非开发人员)再次将各个func分支merge到一个release分支中,由QA进行上线前的最后一轮在线确认测试。在最接近真实环境的环境进行在线确认,确认无误后,内部发布上线,在线上环境进行确认。无误后,确认产品发布并由专门的人员(非开发人员)将release分支代码merge到master分支和dev分支。

至此,产品成功发布上线,master分支和dev分支代码更新完毕。

Git之QA操作

作为QA,在这一整体的流程中,需要确保其负责的测试分支是最新的,需要实时的merge开发所给的代码。步骤如下:

1. 从Gitlab上克隆仓库到本地;

2. 进入仓库并创建test分支在本地;

3. 从本地的master分支切换到新建的test分支;

4. fetch一下远端代码;

5. 将开发分支merge到test分支上(若merge过程中遇到冲突须由开发来对冲突部分代码进行确认并解决);

6. Push test分支到远端;

7. 部署代码到服务器端(过程类似于以上过程,可由公司内部系统自动部署在服务器端)并进行测试。

以上过程可以下载并使用TortoiseGit这一软件完成,也可以下载安装Git并在Git Bash中通过命令行的方式完成。

开发与测试整体过程中的Git分支merge流程的更多相关文章

  1. 在Windows Server 2008 R2下搭建jsp环境(四)-在测试的过程中可能出现的问题

    环境基本部署好了之后,便开始测试,一定要让他经得起"考验",他才会值得你的信赖.Tomcat服务器部署成功的的验证方法(默认端口的情况下): 1.loacalhost:8080 2 ...

  2. 在Visual Studio 中使用git——分支管理-下(九)

    在Visual Studio 中使用git--什么是Git(一) 在Visual Studio 中使用git--给Visual Studio安装 git插件(二) 在Visual Studio 中使用 ...

  3. 在Visual Studio 中使用git——分支管理-上(八)

    在Visual Studio 中使用git--什么是Git(一) 在Visual Studio 中使用git--给Visual Studio安装 git插件(二) 在Visual Studio 中使用 ...

  4. Eclipse中修改GIT分支名称

    修改GIT分支名称: 1.切换到要修改名称的分支: 2.右击项目——Team——Advanced——Rename Branch…: 3.在弹出的Branch Rename框中选中要修改名的分支——Re ...

  5. Eclipse中合并GIT分支

    合并GIT分支: 1.  切换到主分支: 2.  右击项目——Team——Merge…: 3.  在弹出的Merge框中选择要合并的分支——Merge: 4.  合并后如果出现冲突,右击项目——Tea ...

  6. Eclipse中删除GIT分支

    删除GIT分支: 删除分支时不能直接删除本分支,所以要切换到另一分支,即非删除分支. 1.右击项目——Team——Advanced——Delete Branch...: 2. 在弹出的Delete b ...

  7. Eclipse中切换GIT分支

    切换GIT分支: 右击项目——Team——Switch To——选择你要切换的分支.

  8. Git分支merge和rebase的区别

    Git merge是用来合并两个分支的. git merge b # 将b分支合并到当前分支 同样 git rebase b,也是把 b分支合并到当前分支 原理 如下: 假设你现在基于远程分支&quo ...

  9. git分支merge冲突 error: you need to resolve your current index first

    问题: 执行切换代码分支 git checkout featrue_2019-06-24 ,报错如下: error: you need to resolve your current index fi ...

随机推荐

  1. BCB 多线程的同步与协调

    多线程编程是提高系统资源利用率的一种常见方式.它占用的资源更小,启动更快,还可以实现在后台运行一些需时较长的操作.[喝小酒的网摘]http://blog.hehehehehe.cn/a/8498.ht ...

  2. Python学习总结14:时间模块datetime & time & calendar (一)

    Python中的常用于处理时间主要有3个模块datetime模块.time模块和calendar模块. 一.time模块 1. 在Python中表示时间的方式 1)时间戳(timestamp):通常来 ...

  3. uboot.lds (一)

    lds文件与scatter文件相似都是决定一个可执行程序的各个段的存储位置,以及入口地址,这也是链接定位的作用.U-boot的lds文件说明如下:       SECTIONS{        ... ...

  4. 更改EBS APPS 密码流程

    更改EBS APPS 密码流程 (更改完后重启APP 和DB)2008-1-4 在EBS11.5.10.2环境应用成功!  参考metalink Note:160337.1 How To Manual ...

  5. async fifo

    异步fifo,解决跨时钟域的数据传输问题. 由binary,gray两种counter组成,在读写domain之间,只传输gray code. 主要的设计难点在empty和full的产生中. empt ...

  6. 广告点击率 CTR预估中GBDT与LR融合方案

    http://www.cbdio.com/BigData/2015-08/27/content_3750170.htm 1.背景 CTR预估,广告点击率(Click-Through Rate Pred ...

  7. PAT乙级 1027. 打印沙漏(20)

    1027. 打印沙漏(20) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 本题要求你写个程序把给定的符号打印成 ...

  8. java 网络编程(四)----UDP进阶篇聊天小程序

    设计要求:单线程模式,客户端只发送数据,数据的来源为键盘录入,服务器端只接收数据,当客户端发送886的时候,客户端和服务器端都退出. 1. 发送端: public class Send impleme ...

  9. Java图像文件的读写

    读取bmp文件到BufferedImage中File file2 = new File("c:\\testimages\\tttt" + ".bmp");// ...

  10. java运算符优先级记忆口诀

    尊重原创:(口诀)转自http://lasombra.iteye.com/blog/991662 今天看到<java编程思想>中的运算符优先级助记口诀,不过"Ulcer Addi ...