开发与测试整体过程中的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. USACO: Combination Lock

    长久不写算法题,这种简单题折腾了一下午... /* ID: yingzho2 LANG: C++ TASK: combo */ #include <iostream> #include & ...

  2. php获取文件后缀名格式

    function get_extension($file) { substr(strrchr($file, '.'), 1); } 第2种方法: function get_extension($fil ...

  3. cocos2d-x游戏开发之烟花粒子效果

    //散烟花及“太”“棒”“了”效果 void mygame::playfire() { sprite *tai = sprite::create("tai.png"); tai-& ...

  4. wc移植sae笔记

    1.wc移植到sae---上传图片 ①先看profile.ptl.html中的ajax代码修改functions.js中G_BASE_URL的值.在这里我先写死成->'http://2.idan ...

  5. Swift 注释

    注释就是对代码的解释和说明.目的是为了让别人和自己很容易看懂.为了让别人一看就知道这段代码是做什么用的. 正确的程序注释一般包括序言性注释和功能性注释.序言性注释的主要内容包括模块的接口.数据的描述和 ...

  6. where 子句和having子句中的区别

    1.where 不能放在GROUP BY 后面 2.HAVING 是跟GROUP BY 连在一起用的,放在GROUP BY 后面,此时的作用相当于WHERE 3.WHERE 后面的条件中不能有聚集函数 ...

  7. Android中ListView放入PopupWindow产生问题解决

    今天在做项目时候发现将ListView放入PopupWindow产生问题,ListView放入PopupWindow后 对PopupWindow设置了setFocusable(true)这时候其他的控 ...

  8. android——单点触控移动,多点触控放大缩小

    xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:to ...

  9. Android NDK 开发(二) -- 从Hlello World学起【转】

    转载请注明出处:http://blog.csdn.net/allen315410/article/details/41805719  上篇文章讲述了Android NDK开发的一些基本概念,以及NDK ...

  10. ASP.NET MVC下的四种验证编程方式[续篇]【转】

    在<ASP.NET MVC下的四种验证编程方式> 一文中我们介绍了ASP.NET MVC支持的四种服务端验证的编程方式(“手工验证”.“标注ValidationAttribute特性”.“ ...