企业中多分支多人协作的git工作流程
分支模型和权限
我们用的是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工作流程相关推荐
- Git 企业中常用分支管理策略
Git 企业中常用分支管理策略 一般企业中开发一个项目的分支策略 主分支 master 开发分支 develop 功能分支 feature 预发布分支 release bug 分支 fixbug 其它 ...
- Git分支——多人协作开发
一.了解分支 Git分支可以将主线任务(项目)分为若干个分支,一个或若干个人操控一个分支,在同一时间点各司其职,完成相对应的工作,各分支完成之后总汇在主线任务上,在最短的时间内完成项目需求,实现多人协 ...
- git下载安装、验证、企业实战单机、多人协作
此课程会划分为10个小结进行讲述 1 安装和配置 2 创建仓库 3 基本用法 4 三种状态 5 标签 tag 6 分支 branch 7 合并分支 8 远程仓库 9 如何多人远程合作 git下载安装验 ...
- git config设置用户名_一个神奇的工具,实现多人协作,git常用命令详解
git是一款开源的分布式版本控制工具,在世界上所有分布式版本控制工具中,git是最快.最简单.最流行的. git的作者是Linux之父:Linus Benedict Torvalds,当初开发git仅 ...
- Git复习(五)之多人协作、git push失败、git pull失败
多人协作 多人协作时,大家都会往master和dev分支上推送各自的修改. 现在,模拟一个你的小伙伴,可以在另一台电脑(注意要把SSH Key添加到GitHub)或者同一台电脑的另一个目录下克隆: $ ...
- 将机器人技术应用于医疗机器人的机器人协作:实现工作流程的协同性
作者:禅与计算机程序设计艺术 随着自动化技术的快速发展,目前已经出现了多个可穿戴设备.机器人等新型产品,在医疗行业中也得到广泛应用.其中,机器人协作可以提高效率和质量,减少错误率,降低人力成本.如何利 ...
- 如何多人共同编辑_如何实现可多人协作的“在线excel”系统?
多人协作在线文档的概念,最早由Google Docs带入中国.但实际上,在日常工作中,与团队的其他人进行协作是一种在常见不过的工作方式. 由于工作分工.工作进展的不同,团队内部的信息往往需要及时同步, ...
- 如何实现可多人协作的“在线excel”系统?
由于工作分工.工作进展的不同,团队内部的信息往往需要及时同步,然而伴随着团队经营规模的不断扩大,在线协同.多人协作,以及软件项目管理等问题将会接踵而至,成为制约企业高效发展的瓶颈. 市面上,可多人在线 ...
- Baklib知识管理体系:将知识管理深化到企业中
知识管理是对企业内部的有价值的方案.策划.成果.经验进行分类存储和管理,积累知识资产,并且挖掘其潜在价值,促进知识的学习.共享.培训.再利用和创新,降低组织的运营成本,强化核心竞争力. 知识管理体系是 ...
最新文章
- 一、稀疏数组的实际应用和代码实现
- 马斯克在线“求逮捕”:美国县政府不让特斯拉复工,钢铁侠彻底怒了
- 后台产品经理入门指南(下)
- 服务器备份文件格式,证书服务器,备份,还原
- dede plus ad js.php,织梦dedecms/plus/文件夹的功能介绍
- 深入理解Redis分布式锁
- 最小生成树(MST,minimum spanning tree)
- 记录一次es head测试使用说明
- 四元数与欧拉角之间的转换
- python图像锐化滤波_Laplacian滤波器实现并用于图像锐化
- 数据库文档自动生成工具
- php7国内,介绍php7和php5对比
- Downward paths(数论,思维)
- 卷积神经网络常见模块
- sql 查询本月请假的人数_温故而知新---学习SQL练习作业
- 常用的UML建模详解
- 【以太网模块调试记录】ZLG EPORTM集成式RJ45调试记录(STM32/GD32)
- 《Neural Machine Translation: Challenges, Progress and Future》译文分享
- 手机怎么将中文翻译为英文
- vue3引入.vue文件以及.ts文件时提示找不到模块