美文网首页
成功的Git分支模型

成功的Git分支模型

作者: zhCN_超 | 来源:发表于2017-07-16 11:06 被阅读81次

2016/09/17
如何使用Git合理的规划项目从开始到结束,用自己的烂笔头加深一下印象。

主分支master

repo初始化的分支是master,这个分支自动创建,有且仅有一个,这个分支用来发布正式版本。
项目负责人首先再这个分支上做的工作是项目基本结构搭建。比如文件目录规划等,俗称脚手架
在这个分支上只允许改动脚手架代码。

开发分支dev

这个分支用来项目日常开发。
搭建完成之后,提交至Git服务器(这里一般都是公司内网的Gitlab),然后基于master分支建立开发分支dev并进入该分支,此时masterdev代码是一样的

$ git checkout -b dev master

功能分支features

这个分支用来开发项目中的不同功能点。
dev分支这个时候不动,如果项目组人员少,每个人负责的开发任务可能很多,这个时候如果以一个个的功能点来新建features分支,后期合并操作挺繁琐的,所以我觉得以成员来新建features分支会较好。
比如现在项目组除了负责人,有成员张三李四,那么这两个人在dev分支上新建自己的分支

$ git checkout -b zhangsan dev
$ git checkout -b lisi dev

预发布分支release

这个分支是预发布分支,一般用在QA环境。
项目本期所以功能全部开发完成之后,由项目负责人在dev分支上合并所有的features分支(有冲突,解决冲突,再提交),删除features分支,提交dev

$ git checkout dev
$ git merge --no-ff zhangsan
$ git branch -d zhangsan
$ git push origin dev

--no-ff 可以让被合并的分支的提交记录在合并的分支上体现

合并完所有features分支之后,基于dev创建预发布分支,分支名上写上预发布版本号

$ git checkout -b release-1.0 dev

预发布版本测试通过之后,合并到master并打上tag

$ git checkout master
$ git merge --no-ff release-1.0
$ git tag -a 1.0

再合并到dev

$ git checkout dev
$ git merge --no-ff release-1.0

删除预发布分支

$ git branch -d release-1.0

修补分支hotfix

线上的如果出现了问题,我们在master上分离出hotfix分支,分支名写好修复版本号

$ git checkout hotfix-0.1 master

分支修复完毕,合并到masterdev,打上修复的tag

$ git checkout master
$ git merge -no-ff hotfix-0.1
$ git tag -a 0.1
$ git checkout dev
$ git merge --no-ff hotfix-0.1

删除hotfix分支

$ git branch -d hotfix-0.1

更多细节

原版
翻译

相关文章

网友评论

      本文标题:成功的Git分支模型

      本文链接:https://www.haomeiwen.com/subject/ldetkxtx.html