Git 工作流与实战演练

一、 什么是工作流

因为项目开发中,多人协作,分支很多,虽然各自在分支上互不干扰,但是我们总归需要把分支合并到一起,而且真实项目中涉及到很多问题,例如版本迭代,版本发布,bug 修复等,为了更好的管理代码,需要制定一个工作流程,这就是我们说的工作流,也有人叫它分支管理策略。
“工作流程"在英语里,叫做"workflow"或者"flow”,原意是水流,比喻项目像水流那样,顺畅、自然地向前流动,不会发生冲击、对撞、甚至漩涡。

二、GitFlow工作流说明

Gitflow 工作流通过为功能开发、发布准备和维护设立了独立的分支,让发布迭代过程更流畅。严格的分支模型也为大型项目提供了一些非常必要的结构。
Git 工作流与实战演练

剩下要说明的问题围绕着这2个分支的区别展开。

三、分支种类

Git 工作流与实战演练
主干分支 master
主要负责管理正在运行的生产环境代码。 永远保持与正在运行的生产环境 完全一致。
热修复分支 hotfix
主要负责管理生产环境下出现的紧急修复的代码。 从主干分支分出,修 理完毕并测试上线后,并回主干分支。并回后,视情况可以删除该分支。
开发分支 develop
主要负责管理正在开发过程中的代码。一般情况下应该是最新的代码。
准生产分支(预发布分支) release
较大的版本上线前,会从开发分支中分出准生产分支,进行最后阶段的集 成测试。该版本上线后,会合并到主干分支。生产环境运行一段阶段较稳定后 可以视情况删除。
功能分支 feature
为了不影响较短周期的开发工作,一般把中长期开发模块,会从开发分支 中独立出来。 开发完成后会合并到开发分支。

四、工作流实战演练

Git 工作流与实战演练

第1步: 经理 创建开发分支

使用 经理 用户,在本地仓库中新创建一个 develop 分支
项目右键 → Git → Repository → Branches
点击 New Branch 创建分支
Git 工作流与实战演练

框中输入新分支名:develop , Checkout branch 勾选后,会马上切换到新创建的这个分支
Git 工作流与实战演练

右下角可查看到当前所在分支: develop
Git 工作流与实战演练

第2步: 经理 develop分支止开发新功能

Git 工作流与实战演练

第3步: 经理 提交到本地库并推送到远程develop分支

Git 工作流与实战演练
Git 工作流与实战演练
Git 工作流与实战演练
在码云上切换develop分支查看
Git 工作流与实战演练

第4步: 总监 拉取远程库develop分支代码到本地develop分支

总监先在本地创建好develop分支
Git 工作流与实战演练

总监再进行远程库develop分支代码到本地develop分支
Git 工作流与实战演练
Git 工作流与实战演练

第五步:总监切换回主分支master(本地库)

项目右键 → Git → Repository → Branches
Git 工作流与实战演练
如下已经切换成功:
Git 工作流与实战演练

第6步: 总监 将本地develop合并到mater分支上

项目右键 → Git → Repository → Merge Changes…
Git 工作流与实战演练
Git 工作流与实战演练
合并结果:
Git 工作流与实战演练

第7步: 总监 将合并后的master推送到远程库master

项目右键 → Git → Repository → push
Git 工作流与实战演练