git flow 基础了解

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

上一篇:dbt 0.14.0 发布


下一篇:一、git提交代码步骤