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. sh_02_判断年龄改进版

    sh_02_判断年龄改进版 # 输入用户年龄 age = int(input("请输入年龄:")) # 判断是否满 18 岁 (>=) if age >= 18: # ...

  2. java实现微信小程序服务端(登录)

    微信小程序如今被广泛使用,微信小程序按照微信官网的定义来说就是: 微信小程序是一种全新的连接用户与服务的方式,它可以在微信内被便捷地获取和传播,同时具有出色的使用体验. 这就是微信小程序的魅力所在,有 ...

  3. linux文件重定向

    1:标准输出:2:错误输出 1,exec启动一个新的shell将STDOUT文件描述符重定向到文件 #!/bin/shecho "test exec..."exec > ou ...

  4. (转载)Kaggle_Titanic生存预测 -- 详细流程吐血梳理

    Kaggle_Titanic生存预测 -- 详细流程吐血梳理 https://blog.csdn.net/Koala_Tree/article/details/78725881 Kaggle中Tita ...

  5. 5-1 Django的路由层(urlconf)

    URL配置(URLconf)就像Django 所支撑网站的目录.它的本质是URL与要为该URL调用的视图函数之间的映射表:你就是以这种方式告诉Django,对于客户端发来的某个URL调用哪一段逻辑代码 ...

  6. docker常用软件安装及使用

    linux安装docker: sudo wget -qO- https://get.docker.com | sh 启动docker: service docker start 搜索镜像: docke ...

  7. Git+Jenkins配置

    一.新建任务 admin账户登陆jenkins,点击新建按钮-> 选择构建一个自由风格的软件项目,item name 随便输入一个自己认为有意义的名字,点击OK 二.源码管理 源码管理-> ...

  8. ssh 多秘钥管理和坑

    概述 很久之前就想研究一下 ssh 的多秘钥管理,今天正好有时间就研究了一下,挺简单的,记录下来,供以后开发时参考,相信对其他人也有用. 参考资料: Git - 生成 SSH公钥 , Linux 下多 ...

  9. Linux_KVM虚拟机

    目录 目录 Hpyervisor的种类 安装KVM 使用virsh指令管理虚拟机 KVM虚拟机的网络设置 Hpyervisor的种类 hpyervisor:是一种VMM(Virtual Machine ...

  10. MYSQL常见安装错误集:[ERROR] --initialize specified but the data directory has files in it. Abort

    1.[ERROR] --initialize specified but the data directory has files in it. Abort [错误] -初始化指定,但数据目录中有文件 ...