基于Gitflow工作流方式Tortoise(乌龟) Git 分支管理

770 阅读2分钟

简介

本文将对Tortoise(乌龟) Git 内使用Gitflow方式管理分支进行讲解,涉及部分分支操作,未涉及分支冲突解决等特殊情况

创建对应git库

这里使用github上储存项目,在项目建立完成后会自动生成main分支,即主干分支

创建历史

历史分支,一般使用develop命名,相对使用仅有的一个master分支,Gitflow工作流使用2个分支来记录项目的历史。master储存正式发布的历史,develop分支作为功能的集成分支。这样也方便master分支上的所有提交分配一个版本号。

分支示意图

注意:此处创建分支后,分支信息只存在于本地,远端是没有分支信息的,需要手动推送分支信息给远端

推送完成后可发现github远端已出现新分支

创建功能分支

切换至历史分支

创建功能分支,需注意功能分支需要基于历史分支进行创建,

每个新功能位于一个自己的分支,这样可以push到中央仓库以备份和协作。

但功能分支不是从master分支上拉出来的新分支,而是使用develop分支作为父分支。当新功能完成时,合并回develop分支。新功能的提交不直接与master交互。

发布分支

一旦develop(开发)分支上的功能到了发布日期,就从develop分支fork(叉)一个发布分支(一般叫release)。

release(发布)分支用于预发布测试,所以从这个时间点开始后新的功能不再加到这个分支上,release分支只应该做bug修复、文档生成和其他面向发布的任务。一旦release测试完毕并准备发布后,将其合并到master分支与develop分支,并为发布版本分配一个版本号打上Tag

合并分支

首先需要切换到需要被合并的分支上(这里为主分支或历史分支),然后选择合并对应发布分支

使用一个专门用于发布的分支,是一个团队可以在完善发布版本的同时,另一个团队继续开发下一个版本功能。

打上Tag

在该主分支发布版本上打上Tag

推送标签记得需要勾选上包括标签

维护分支

维护分支(一般叫hotfix)是唯一可以直接从master分支fork出来的分支,用于线上版本bug修复。修复完成后,应马上合并回master和develop分支,同时master分支用新版本号打上Tag。

无非是master(线上),develop(开发),release(预发布),hotfix(线上bug修复)这四种常用的分支