git flow 软件开发中的一个分支管理流程。利用它可以让软件开发有条不紊的进行,先对它进行一个大概的了解吧,后面工作了实际用到了在深入研究一下。
先看下它的工作流程:

这张图看着一脸茫然,先放在这儿,后面就看懂了。
开发中主要的两个分支是master和develop分支。它们的职责:

  1. master分支:是主分支,永远处在即将发布的状态。
  2. develop分支:它是开发分支,表示最新的开发状态。
    一般情况下master分支和develop分支是保持一致的,但是当develop分支正在开发新的功能的时候,开发完毕并且测试也没问题了,这时会merge合并到master分支准备发布。

git glow 除了提供了master和develop两个主要的分支外,还提供了以下三个辅助分支:

  1. feature分支:它是基于develop分支的,用于开发新功能的分支,如果新功能开发完毕,则合并到develop分支。
  2. release分支:它也是基于develop分支的,它是表示准备要发布的版本的分支,用于修复bug,完成后合并到develop分支和master分支。
  3. hotfix分支:表示用于修复紧急bug的分支,它是基于master分支的,修复完成后合并到master 和develop分支。

例如:现在已经有了master和develop分支,现在要准备做一个新功能A,那么第一步就要基于develop分支创建一个新的分支出来。
git branch feature/A
这就是一个规范表示所有开发的功能的分支都是以feature为前缀。

如果这时发现了紧急bug,那么就需要立刻切换到master分支去修复bug,并且在master基础上建立一个分支:git branch hotfix/B
当bug修复完成后直接合并到master和develop分支。

这些完成后,在切换到feature/A继续新功能的开发,如果开发完成了合并到develop分支。
如果功能都开发完毕,并且测试通过了,可以准备发布了,那么就需要建立一个release发布分支。
git branch release/1.0 表示发布版本为1.0。
最后在发布分支上做最后的测试,如果一切ok,则直接把release分支合并到master和develop分支。
最后进行发布。


有一个git flow工具可以帮我们做很多事情,我们不用这么合并过来合并过去,但是刚开始最好这样吧,先熟悉它的流程。
例如需要开发一个新功能直接从切换到develop分支到创建feature分支一步到位:
git flow feature start A
这个分支完成后,需要合并到develop分支
git flow feature finish A 即可。

如果是hotfix或者release分支,他会自动帮你合并到develop和master两个分支。

git flow 大体先到这儿。

git flow 基础了解的更多相关文章

  1. git以及git flow 的使用

    转载:http://selfcontroller.iteye.com/blog/996494 在这里主要讲一下我在项目中用到的关于gitflow的用法.   公司的项目中,专门有一台用来存放版本库的服 ...

  2. 从一个前端项目实践 Git flow 的流程与参考

    Git flow 出自 A successful Git branching model,这里使用了一个前端项目配合本文稿实施了 git flow 并记录流程作出示例和参考,对 hotfix 与持续部 ...

  3. Git flow 的流程

    Git flow 的流程与参考   Git flow 出自 A successful Git branching model,这里使用了一个前端项目配合本文稿实施了 git flow 并记录流程作出示 ...

  4. git flow 的使用

     在这里主要讲一下我在项目中用到的关于gitflow的使用方法.   公司的项目中,专门有一台用来存放版本号库的server,路径是在默认的安装文件夹/opt/git/,那么在使用的时候,假设你是 ...

  5. Git Flow Note

    近期困惑于Git代码版本控制,集中两天时间研究,其中基础知识来源于<Git权威指南>,分支思想则来源于一篇博文<A successful Git branching model> ...

  6. Git Flow 分支管理简述

    概述 Git 是什么 Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的 ...

  7. Git 常用命令和 Git Flow 梳理

    git 用 git 有一段时间了,之前没有详细地了解 git flow,导致协作过程中或多或少出现了一些头疼问题.最近静下心来理了下 git flow 的整个流程,再回头看开朗了不少,总结到这里.介绍 ...

  8. Git flow 工作流与规范

    概述 简版图: PS. 可能用到的命令: 1.从指定 commit拉出新分支   git checkout commitId -b 本地新branchName git checkout 9fbc3d0 ...

  9. 【技术博客】Git Flow模型管理代码版本

    参考GIT版本管理:Git Flow模型,在此基础上加入了自己的理解,增加人员分工和相应代码,并根据本次项目的实际情况进行相应修改. 在本学期的软件工程开发过程中,我们从alpha阶段就使用了git ...

随机推荐

  1. HDU2294--Pendant(DP,矩阵优化)

    Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s) ...

  2. Mybatis 一对多 关联查询查询

    一对多 与 一对一 查询有许多相似之处. 最主要的区别是 查询结果是list,与之对应的标签为collection. 班级和学生,一个班有多个学生,而每个学生只能属于一个班. 此时班级编号作为学生表的 ...

  3. 对AC自动机+DP题的一些汇总与一丝总结 (2)

    POJ 2778 DNA Sequence (1)题意 : 给出m个病毒串,问你由ATGC构成的长度为 n 且不包含这些病毒串的个数有多少个 关键字眼:不包含,个数,长度 DP[i][j] : 表示长 ...

  4. VGA接口一根针折了

    注意!!要由 针 对照着 接口 看!!别看反了! VGA接头图如下: VGA接口,15根针,其对应接口定义如下: 1红基色 red 2 绿基色 green 3 蓝基色 blue 4 地址码 ID Bi ...

  5. 构造Map并对其排序

    #构造Map并对其排序 attr_tul = ['a','b','c','d','e','f'] one_tul = [,,,,,] one_dic = {} for i in range(len(a ...

  6. Error: Another program is already listening on a port that one of our HTTP servers is configured to use. Shut this program down first before starting supervisord.

    原文出处: https://blog.csdn.net/hyunbar/article/details/80111947 运行 supervisord -c /etc/supervisor/super ...

  7. centos7 ngxin启动失败:Job for nginx.service failed(80端口被占用的解决办法)

    问题描述:(flaskApi) [root@67 flaskDemo]# service nginx start Redirecting to /bin/systemctl start nginx.s ...

  8. for...in 、Object.keys 、 Object.getOwnPropertyNames

    个人总结: 1.for...in 遍历的是对象的可枚举,非Symbol属性(包括自身和原型上的) 2.Object.keys 返回一个数组,是对象自身的可枚举属性 (非Symbol) 3.Object ...

  9. 测开之路一百二十六:flask之获取request请求数据

    可以根据flask的request对象获取所有的请求信息 path = request.path # 获取请求地址method = request.method # 获取请求方法ip = reques ...

  10. 正则表达式——Unicode

    第 7 章 Unicode 7.1 关于编码   通常,英文编码较为统一,都采用ASCII编码或可以兼容ASCII编码(即编码表的前127位与ASCII编码一直,常见的各种编码,包括Unicode编码 ...