分支模型和权限

我们用的是master(生产),release(预生产),integration(测试),develop(开发) 分支模型

git平台:gitlab

分支权限

前端后端:拥有的的权限只有开发分支的合并
开发组长:拥有的的权限有开发测试预生产生产分支的合并

发布权限

前端后端:拥有的的权限只有开发环境的发布
开发组长:拥有的的权限只有开发环境测试环境的发布
测试:拥有的的权限只有测试环境预生产的发布
运维:拥有的的权限只有生产的发布

开发上线流程

1.需求评审
2.开发排期
3.开始开发
4.测试冒烟
5.冒烟通过提测,合代码到测试分支
6.测试测试,开发修bug
7.测试完成,发布预生产,合代码到预生产
8.预生产测试,修bug,修完的bug要走测试再走预生产
9.预生产产品验收,提交生产,合代码到生产,生产运营(客户)验收
10.结项

重点第三步开始(新需求开发):

1.开始开发要切换分支到release或者master

## 注意:如果release上有别人没发到生产的代码,就切换到master分支
git checkout release
## or
git checkout master

2.开发新需求先把 预发布/生产上最新代码拉下来

git pull

3.创建自己的独立分支并在这个分支上开发

git checkout -b 分支名
分支名要有命令规范,不要随便取,不然鬼才知道你这个分支是干嘛的
例如:业务或项目名缩写-版本-开发人姓名

## 例子
git checkout -b tfsc-2.7-hqg

4.开发完成提交代码

git add .
git commit -m'提交描述'
git push

提交描述怎么写?
新需求提交:feat:需求8296-新增购物车需求
bug修复:fix:bug12890-购物车按钮点不动

## 提交描述例子
git commit -m'fix:bug12890-购物车按钮点不动'

5.开发前后端开发环境联调
线上合并代码到develop分支,开发人员有权限,自己线上合并即可,然后jekins构建项目,结合你本地运行代码,你和后端就可以联调了(你本地调,后端看你发布到开发环境的代码构建后的地址)

就算你有权限自己合并开发分支,也禁止本地merge,所有的merge走线上(下面有指引)!

6.线上申请自己分支合并代码到integration(测试)分支

前面合到develop也是在这里合并!

7.冒烟测试(冒烟在开发环境冒烟)
叫测试在开发环境进行冒烟测试,根据测试的测试用例来测试,有问题及时修改,然后提交代码到自己分支,再线上合并到开发分支。
直到冒烟测试通过,就申请提测,将自己分支最新代码合并到测试分支,联系对应的测试人员构建测试。
8.测试环境测试
边测边修复bug,直到测试完成,测试说可以,再将代码发到预生产,这个作为前端一般是没有权限合并的,只能提交合并申请后由开发组长来完成,然后交测试发布预生产
9.预生产环境测试
也是边测试边修复bug,注意:这里修复的bug要重走测试,测试环境测过了,再发预生产,预生产环境测完了,产品测试,产品觉得ok了,就验收,开始合并到生产环境
9.产环境测试发布验收
生产环境发布需要提上线申请,打tag,然后交给运维发布上线,最后客户验收!
关于tag怎么打看下面:

1.打tag切换到master分支
2.git tag 查看所有tag

3.git tag tag名
4.git push origin tag名

5.打线上申请

Jenkins项目名称: tuns_web_pc
GIT仓库地址: http://192.168.2.20/front_end/tuns_web_pc.git
当前发布分支TAG/分支: 2.8.0
异常处理: 回滚至 2.7.8

企业中多分支多人协作的git工作流程相关推荐

  1. Git 企业中常用分支管理策略

    Git 企业中常用分支管理策略 一般企业中开发一个项目的分支策略 主分支 master 开发分支 develop 功能分支 feature 预发布分支 release bug 分支 fixbug 其它 ...

  2. Git分支——多人协作开发

    一.了解分支 Git分支可以将主线任务(项目)分为若干个分支,一个或若干个人操控一个分支,在同一时间点各司其职,完成相对应的工作,各分支完成之后总汇在主线任务上,在最短的时间内完成项目需求,实现多人协 ...

  3. git下载安装、验证、企业实战单机、多人协作

    此课程会划分为10个小结进行讲述 1 安装和配置 2 创建仓库 3 基本用法 4 三种状态 5 标签 tag 6 分支 branch 7 合并分支 8 远程仓库 9 如何多人远程合作 git下载安装验 ...

  4. git config设置用户名_一个神奇的工具,实现多人协作,git常用命令详解

    git是一款开源的分布式版本控制工具,在世界上所有分布式版本控制工具中,git是最快.最简单.最流行的. git的作者是Linux之父:Linus Benedict Torvalds,当初开发git仅 ...

  5. Git复习(五)之多人协作、git push失败、git pull失败

    多人协作 多人协作时,大家都会往master和dev分支上推送各自的修改. 现在,模拟一个你的小伙伴,可以在另一台电脑(注意要把SSH Key添加到GitHub)或者同一台电脑的另一个目录下克隆: $ ...

  6. 将机器人技术应用于医疗机器人的机器人协作:实现工作流程的协同性

    作者:禅与计算机程序设计艺术 随着自动化技术的快速发展,目前已经出现了多个可穿戴设备.机器人等新型产品,在医疗行业中也得到广泛应用.其中,机器人协作可以提高效率和质量,减少错误率,降低人力成本.如何利 ...

  7. 如何多人共同编辑_如何实现可多人协作的“在线excel”系统?

    多人协作在线文档的概念,最早由Google Docs带入中国.但实际上,在日常工作中,与团队的其他人进行协作是一种在常见不过的工作方式. 由于工作分工.工作进展的不同,团队内部的信息往往需要及时同步, ...

  8. 如何实现可多人协作的“在线excel”系统?

    由于工作分工.工作进展的不同,团队内部的信息往往需要及时同步,然而伴随着团队经营规模的不断扩大,在线协同.多人协作,以及软件项目管理等问题将会接踵而至,成为制约企业高效发展的瓶颈. 市面上,可多人在线 ...

  9. Baklib知识管理体系:将知识管理深化到企业中

    知识管理是对企业内部的有价值的方案.策划.成果.经验进行分类存储和管理,积累知识资产,并且挖掘其潜在价值,促进知识的学习.共享.培训.再利用和创新,降低组织的运营成本,强化核心竞争力. 知识管理体系是 ...

最新文章

  1. 一、稀疏数组的实际应用和代码实现
  2. 马斯克在线“求逮捕”:美国县政府不让特斯拉复工,钢铁侠彻底怒了
  3. 后台产品经理入门指南(下)
  4. 服务器备份文件格式,证书服务器,备份,还原
  5. dede plus ad js.php,织梦dedecms/plus/文件夹的功能介绍
  6. 深入理解Redis分布式锁
  7. 最小生成树(MST,minimum spanning tree)
  8. 记录一次es head测试使用说明
  9. 四元数与欧拉角之间的转换
  10. python图像锐化滤波_Laplacian滤波器实现并用于图像锐化
  11. 数据库文档自动生成工具
  12. php7国内,介绍php7和php5对比
  13. Downward paths(数论,思维)
  14. 卷积神经网络常见模块
  15. sql 查询本月请假的人数_温故而知新---学习SQL练习作业
  16. 常用的UML建模详解
  17. 【以太网模块调试记录】ZLG EPORTM集成式RJ45调试记录(STM32/GD32)
  18. 《Neural Machine Translation: Challenges, Progress and Future》译文分享
  19. 手机怎么将中文翻译为英文
  20. vue3引入.vue文件以及.ts文件时提示找不到模块

热门文章

  1. ADR4540ARZ小秘密
  2. 【微服务】6、一篇文章学会使用 SpringCloud 的网关
  3. 榛果 美团 登录 爬虫 requests session
  4. 对System.gc() 和STW的理解
  5. thinkcmf5 pc手机模板切换
  6. HTML5 直播协议之 WebSocket 和 MSE
  7. 一文详解图像中通道相关知识
  8. 中国海洋大学考研977资料百度云
  9. linux 图像处理软件,最佳开源应用程序:图形/图像处理软件
  10. Photoshop-预览图片的方式