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. 2019hdu多校 K-th Closest Distance

    题目链接:Click here 大致题意:q次询问,每次询问你区间[L,R]中|p-ai|的值第k小的是多少 Solution: 直接找是很困难的,我们考虑二分答案,那么本题就十分简单了 我们对权值维 ...

  2. ELK+Filebeat+redis整合

    前面的博客,有具体的ELK安装配置步骤,此处在其基础上修改 修改配置文件并启动 [root@topcheer filebeat-6.2.3-linux-x86_64]# vim filebeat.ym ...

  3. JavaWeb学习篇之----浏览器缓存问题详解

    摘要 1.Etag和Expires中Client 端Http Request Header及Server端Http Reponse Header工作原理. 2.静态下Apache.Lighttpd和N ...

  4. linux下vsftpd的安装及配置使用详细步骤(推荐)

    vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点. vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux.BS ...

  5. (四)mysql -- 常用函数

    今天get一个,先记录一下 以后慢慢补充~ 将varchar转换成int 例如:select * from tb_1 order by cast(sport_sum as unsigned integ ...

  6. 2-sat问题简记

    关于2-sat问题,这里笔者主要是做一些简记,如要详细了解,可以读一读此dalao的文章:https://blog.csdn.net/jarjingx/article/details/8521690 ...

  7. [LeetCode]-algorithms-Longest Substring Without Repeating Characters

    Given a string, find the length of the longest substring without repeating characters. For example, ...

  8. Linux下服务器开发的必要准备

    一.Windows下安装Xshell 二.Linux开启SSH 可以先查询有没有SSH服务 sudo ps -e |grep ssh 没有安装SSH的服务器 sudo apt-get install ...

  9. oracle之VARCHAR2(50 CHAR) 和VARCHAR2(50) 区别?

      首先要明白的是:根据字符集不同,varchar2(50)这样在gbk可存25个汉字,utf8可存16个汉字 这里的50相当于50BYTE,是按字节计数,50CHAR是按字符计数. 对于多字节字符( ...

  10. CSS-W3School:CSS table-layout 属性

    ylbtech-CSS-W3School:CSS table-layout 属性 1.返回顶部 1. CSS table-layout 属性 CSS 参考手册 实例 设置表格布局算法: table { ...