GitFlow流程管理

2019-10-08  本文已影响0人  武_IOS书

Git Flow是构建在Git之上的一个组织、管理软件开发活动的模型。Git Flow是一套使用Git进行源代码管理时的一套行为规范和,通过利用Git创建和管理分支的能力,为每个分支设定具有特定的含义名称,并将软件生命周期中的各类活动归并到不同的分支上。实现了软件开发过程不同操作的相互隔离。这种软件开发的活动模型被称为“Git Flow”。

原理:

gitflow的核心就branch,通过在项目的不同阶段对branch的不同操作包括但不限于create、marge、rebase、等来实现一个完整的高效率的工作流程。一般而言,软件开发模型有常见的瀑布模型、迭代开发模型、以及最近出现的敏捷开发模型等不同的模型。每种模型有各自应用场景。Git Flow重点解决的是由于源代码在开发过程中的各种冲突导致开发活动混乱的问题。因此,Git flow可以很好的于各种现有开发模型相结合使用,尤其是多人合作开发时提高效率。用一张图来了解gitflow的流程:从右向左看 从上到下看

image

Branch:

Branch是gitfolw的核心。主要分为两大类 Main BranchsSupporting branches, 其中 Main Branchs 中又包含了 MasterDevelop,而 Supporting branches 中包含了 Feature ReleaseHotfix 以及其他自定义分支,下面逐一讲解:

Master:

Develop:

image

Feature:

image

Release:

Hotfix:

总结

Git Flow开发模型从源代码管理角度对通常意义上的软件开发活动进行了约束。应该说,为我们的软件开发提供了一个可供参考的管理模型。Git Flow开发模型让开发代码仓库保持整洁,让小组各个成员之间的开发相互隔离,能够有效避免处于开发状态中的代码相互影响而导致的效率低下和混乱。

所谓模型,在不同的开发团队,不同的文化,不同的项目背景情况下都有可能需要进行适当的裁剪或扩充。

效率工具

推荐 sourceTreegitkarken(用免费版即可,不用充钱) 前者对gitsubmodel的支持不太好,不过目前介于我们没有实现组件化所以暂时可以无视;后者完美支持gitsubmodel,但是在拉取一些比较大的库的时候可能会卡死,前公司一个项目30G+ 会有卡死情况出现,后者界面炫酷一些 iOS的话Xcdoe自带git 也可以试试。

上一篇 下一篇

猜你喜欢

热点阅读