文档章节

多团队基于git代码管理协作流程

k
 kingbox2016
发布于 02/27 09:26
字数 867
阅读 101
收藏 0

多团队git协同开发流程

一、版本管理的挑战 虽然有这么优秀的版本管理工具,但是我们面对版本管理的时候,依然有非常大得挑战,我们都知道大家工作在同一个仓库上,那么彼此的代码协作必然带来很多问题和挑战,如下:

  1. 如何开始一个Feature的开发,而不影响别的Feature?
  2. 由于很容易创建新分支,分支多了如何管理,时间久了,如何知道每个分支是干什么的?
  3. 哪些分支已经合并回了主干?
  4. 如何进行Release的管理?开始一个Release的时候如何冻结Feature, 如何在Prepare Release的时候,开发人员可以继续开发新的功能?
  5. 线上代码出Bug了,如何快速修复?而且修复的代码要包含到开发人员的分支以及下一个Release?

二、基于Git Flow扩展的多开发团队分支协同

file

常用的分支: • Production 分支 也就是我们经常使用的Master分支,这个分支最近发布到生产环境的代码,最近发布的Release, 这个分支只能从其他分支合并,不能在这个分支直接修改 • Develop 分支 这个分支是我们是我们的主开发分支,包含所有要发布到下一个Release的代码,这个主要合并与其他分支,比如Feature分支 • Test 分支 这个分支主要是用来对应每个测试环境打包,构建镜像 • Personal分支 开发人员基于主开发分支创建的自己提交代码的分支

三、分支管理 • 初始化分支、拉取Develop主分支 所有在Master分支上的Commit应该Tag

file

项目立项时,申请开通对应版本的开发主分支,命名规则:vx.xx.xxx • 开发阶段 所有参与版本开发人员从主开发分支拉取自己的personal开发分支,命名规则:v.x.xx.xxx-开发人员姓名小写全拼,(一般版本迭代开发完成,该分支可以删除销毁,避免代码库中分支过多)

file

• 测试阶段 1、开发人员完成功能开发并自测完成可以申请合并到测试分支,部署到测试环境

file

2、测试人员在测试环境上,覆盖测试用例,发现bug并提交给开发人员进行bug修复 3、开发人员完成bug修复,并将代码合并到测试分支,部署到测试环境进行回归测试 • 产品验收阶段

file

四、多团队协作开发

file

严格按照版本迭代的先后顺序进行代码更新合并操作,原则上尽量减少冲突。

五、线上bug紧急修复

file

线上紧急bug修复,直接从主干分支上拉取最新版本代码,命名规则:bug-yyyymmdd-问题描述。

六、完成版协作流程图

file

本文由博客一文多发平台 OpenWrite 发布!

© 著作权归作者所有

k
粉丝 0
博文 1
码字总数 867
作品 0
广州
架构师
私信 提问
加载中

评论(0)

从0开始学习 GitHub 系列之「06.团队合作利器 Branch」

Git 相比于 SVN 最强大的一个地方就在于「分支」,Git 的分支操作简直不要太方便,而实际项目开发中团队合作最依赖的莫过于分支了,关于分支前面的系列也提到过,但是本篇会详细讲述什么是分...

googdev
2016/07/11
0
0
从svn转git工作流的技术咨询服务

服务说明 工作流其实不是一个初级主题,背后的本质问题其实是有效的项目流程管理和高效的开发协同约定,不仅是Git或SVN等VCS或SCM工具的使用。近期oschina做了一次管理过程转变,我们从svn切...

OSC闲人
2016/01/22
26
2
Git超实用总结,再也不怕记忆力不好了

欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯工蜂发表于云+社区专栏 Git 是什么? Git 是一个分布式的代码管理容器,本地和远端都保有一份相同的代码。 Git 仓库主...

腾讯云加社区
2018/10/16
0
0
技术团队代码管理和部署

主流公司使用svn和git作为代码版本管理,当然也不排除直接copy或者ftp。公司经历了的svn到git的变迁,也深刻体会到不同的版本管理服务,使得技术团队的协作方式变得更为流畅。 简单介绍下背景...

wushuiyong
2015/10/25
2.6K
2
华为上线软件开发云,一站式云端 DevOps 平台

在12月22日举办的“2016华为大连软件开发云上线大会”上,华为正式上线发布了集其自身研发实践、前沿研发理念、先进研发工具为一体的软件开发云平台,面向软件企业、高校和开发者提供云端研发...

王练
2017/01/03
3.6K
9

没有更多内容

加载失败,请刷新页面

加载更多

“听相声的可以出去了,我们是来卖货的。”

多年以后,当人们打开抖音,准会想起罗永浩直播首秀的那个遥远的愚人节夜晚。 说好的相声呢?说好的情怀呢?说好的段子呢? 在这场“基本上不赚钱,交个朋友”的直播中,罗永浩卖的东西可谓是...

UiBot
24分钟前
25
0
Python中的这3个骚操作你会吗?

本文主要介绍Python的高级特性:列表推导式、迭代器和生成器,是面试中经常会被问到的特性。 因为生成器实现了迭代器协议,可由列表推导式来生成,所有,这三个概念作为一章来介绍,是最便于...

Python圈子
26分钟前
28
0
Step by step让你快速升级将React Router v5 路由器更新到v6

感谢参考原文-http://bjbsair.com/2020-04-01/tech-info/18408.html 图片来自网络 1 引言 React Router v6 alpha 版本发布了,本周通过 A Sneak Peek at React Router v6 这篇文章分析一下带...

曹长卿
26分钟前
16
0
shell基础知识(3.16)

shell 记录历史记录 !! :表示执行上一条命令 !n(n为数字):表示执行第n条命令 !字符串(字符串大于1):如!pw,表示执行命令历史中最近一次以pw开头的命令 tab键:补全命令和文件名,2下则...

于秋
27分钟前
19
0
[每天进步一点点]mysql笔记整理(三):索引

笔记很无味,点赞请准备。 索引定义 数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询,更新数据库表中的数据。 从定义中可以看出,索引其实就是一种数据结构。数据都是以...

毛毛向前冲V5
31分钟前
25
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部