Git Flow流程

Git的优势:

1.Git是一个分布式的版本控制系统,这一点可以对比svn分支管理系

svn多个开发人员共用操作同一个文件, 分支的操作都是影响“全世界”,但G更倾向于被使用于分布式模式,也就是每个开发人员从中心版本库/服务器上chect out代码后会在自己的机器上克隆一个自己的版本库。我们可以在自己的代码库上进行提交,修改,分支,合并等各种操作。同时git开发人员理论上可以再自己的代码库上无限分支的开发。

2.Git把内容按元数据方式存储,而SVN是按文件

有的资源控制系统都是把文件的元信息隐藏在一个类似.svn,.cvs等的文件夹里。如果你把.git目录的体积大小跟.svn比较,你会发现它们差距很大。因为,.git目录是处于你的机器上的一个克隆版的版本库,它拥有中心版本库上所有的东西,例如标签,分支,版本记录等。

3.分支切换方便,优秀的分支模型 可以支持我们进行项目的快速开发

在git分支模型中,我们很容易实现多个开发线并行实现快速开发。

Git的分支种类:

master:主分支

这个分支是我们的Production分支,是我们最新发布到生产环境的代码所在的分支。 这个分支只能从其他分支合并,不能在这个分支直接修改。

develop:开发分支

这个分支是我们是我们的主开发分支,包含所有要发布到下一个Release的代码,这个主要合并与其他分支,比如Feature分支。

feature:功能分支

这个分支主要是用来开发一个新的功能,一旦开发完成,我们合并回Develop分支进入下一个Release。

release:发布分支(测试分支)

这个分支是我们在develop开发完成,将要进行发布时从develop拉取的分支,release分支完成后我们需要将release分支分别合并到master 和 develop中。

bugFix:bug修复分支

这个分支是我们线上代码有bug时,从master拉取的分支,当bug修复时合并到develop分支上 以及master上

Git的分支命名规范:

master: master-系统名-项目版本 例如:master-iOS-xxxApp1.0develop:develop_创建时间 例如 develop_20160101* feature: feature_版本_时间 例如 feature_1.0_20160101 *

release发布分支:release_版本*时间 例如 release1.0_20160101 *

release测试分支:release_feature_时间 例如 release_feature_20160101* *

Git的工作流程:

1.初始的项目创建为master

2.在一个开发线对应一个develop分支

3.进行功能开发时,拉取不同的feature分支 进行开发,当开发完成时 将feature分支合并到develop分支

4.所有的feature分支开发完成都合并到develop分支之后 确认开发完成 进入发布期

5.发布期从当前develop节点拉取release发布分支 进行发布测试

6.当测试完成之后 将release分支分别合并到develop分支和master分支 保持master和develop最新

Git使用注意事项:

1.master分支是server 仓库上不可以更改只能由其他分支合并 (恒存在)

2.develop分支是local 仓库上不可以更改只能由其他分支合并 (恒存在)

3.feature分支对应单个功能(单独开发人员) 开发人员不允许使用其他人的feature 如果遇到有依赖关系的 需要通过develop分支进行通讯

4.当功能开发完成之后将feature合并到 develop中,feature生命周期结束

5.当要单独测试某一个功能,那么将feature分支合并到develop中,由测试拉取release测试分支

6.当线上出现bug时,从master拉取bugfix分支修复bug,修复完成 将bugfix合并到下一个开发周期的develop分支中以及合并到master上 bugfix声明周期结束

Git使用Ps:

当然,这是Git Flow标准流程,我们也可以根据项目团队进行适当的修改,比如我们可以去掉release测试分支,直接在feature进行单个功能测试,也可以直接在develop上进行功能的集成测试。测试完成之后直接将develop合并到master分支上。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Git分支管理 master:主分支,当前分支上的代码随时可以直接发布,并且只能通过Pull Request从其他...
    UEUEO阅读 9,964评论 5 33
  • 多种多样的工作流使得在项目中实施Git时变得难以选择。这份教程提供了一个出发点,调查企业团队最常见的Git工作流。...
    JSErik阅读 4,613评论 2 8
  • 伙伴们,再见吧 说再见还会再会 ... ... 当这首纯粹真挚又饱含希望的儿歌响起,我又想起那部看了数遍由...
    相柳_95阅读 320评论 0 2
  • 今天的文案解析非常意思,因为它没有套路,全都是文化沉淀和生活中发生的趣事,被周周细说娓娓道来,听者兴趣盎然。 一句...
    鱼团长阅读 1,463评论 0 0
  • 1、座次 总的来讲,座次是“尚左尊东”、“面朝大门为尊”。 若是圆桌,则正对大门的为主客,主客左右手边的位置,则以...
    Anna_china阅读 1,770评论 0 1

友情链接更多精彩内容