GitLab分支介绍

GitLab简介:

GitLab是由GitLabInc.开发,使用MIT许可证的基于网络的Git仓库管理工具,且具有wiki和issue跟踪功能。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。
GitLab由乌克兰程序员DmitriyZaporozhets和ValerySizov开发,它由Ruby写成。后来,一些部分用Go语言重写。截止2018年5月,该公司约有290名团队成员,以及2000多名开源贡献者。GitLab被IBM,Sony,JülichResearchCenter,NASA,Alibaba,Invincea,O’ReillyMedia,Leibniz-Rechenzentrum(LRZ),CERN,SpaceX等组织使用。

GitLab分支介绍:
在这里插入图片描述
如上每条竖线代表一个分支,他有三个主要分支

develop分支 :开发者在接到需求之后主要从事开发工作的分支。

release分支:测试在接到测试工作时主要使用的分支,在版本进入测试周期之后,会将该版本的测试代码从develop分支merge到release分支上,表示等待发布状态,此时将不会再添加新功能,只负责当前功能的bug修复。

master分支:当release分支上测试通过,表示代码随时能够发布时,会将代码merge到maste分支,并且打上tag,至此,该版本封版,所有发现的bug均视为线上bug。

另外还有两类次要分支:

hotfix分支:该分支适用于存在热修复功能的开发系统,当发现线上bug之后,如果该bug可以使用hotfix进行修复的,就会在hotfix分支上修复,并且进行测试。测试通过后并入maste分支,并且打上tag号。

功能分支:功能分支是develop分支的辅助分支,将新功能在独立分支进行开发,开发完成后再并入develop分支。这样能够减少多人开发中,单个开发者由于新功能添加过程中修改代码对其他开发者造成的影响。

有几个需要注意的地方

  1. master分支永远是稳定的代码,未经测试的代码不得合并入master分支。该分支只负责发布,不负责开发以及bug修复。

  2. 在版本开发完成之后,代码会合并入release分支进行测试。release分支的所有提交应该不包含新业务的开发,只包含当前需要发布版本的bug修复。

  3. 线上版本出现问题分为两类,一类能用hotfix修复,我们会使用hotfix分支修复后合并入master并且打上tag,并且还需要将hotfix分支的修复内容merge到release或者develop分支上(如果在release上修复,需要记得合并到develop分支中)。还有一部分无法进行hotfix修复,这些bug的修复分支可以在release上,也可以在develop上(如果在release上修复,需要记得合并到develop分支中)。

  4. 功能分支属于辅助分支,当新功能开发完毕并且合并入develop分支之后就逐渐失去作用,等到包含该功能的版本进入测试阶段,并入release之后,我们可以删除该分支,否则时间久了将会积累非常多的功能分支,反而不方便管理。

  5. 有时候我们需要测试接入对功能模块的单独测试,所以测试可能直接使用功能分支代码进行测试,这时候的bug修复就需要在功能分支上进行修复。

### 关于GitLab分支管理的使用指南 #### 分支的概念与作用 在GitLab中,分支是一种轻量级的方式,用于隔离不同的开发工作流。它允许开发者在同一时间处理多个特性或修复问题而不会互相干扰。通过合理的分支策略,团队能够更高效地协作并减少冲突的发生。 #### 创建分支的方法 可以通过命令行来创建新的分支。对于较旧版本的Git客户端,通常采用`git checkout -b <new-branch-name>`的方式来创建并切换至新分支[^1]。而在更新版的Git工具里,则推荐利用`git switch -c <new-branch-name>`这一更为直观简洁的操作方式实现相同目的[^3]。 #### 功能开发分支(Feature Branch) 当需要新增某个特定功能时,应基于当前最新的`dev`分支拉取代码构建专属的功能开发分支。这类分支一般遵循一定的命名约定,例如以`feature/FunctionName`的形式表示具体要实施的功能名称[^4]。这样做的好处在于清晰明了,并便于后续追踪维护。 #### 合并请求流程 完成各自负责模块的工作之后,经过充分自测确认无误的情况下,方可考虑将其成果合并回主线之中。按照既定规则,所有的功能性改动都需先经由各自的独立分支提交Merge Request (MR),并通过审核批准后再正式融入到目标分支当中去[^5]。 以下是执行上述过程的一个简单示例脚本: ```bash # 切换到master分支并保持最新状态 git checkout master git pull origin master # 基于master创建一个新的分支hanbing2/gitlab-usage-demo-master git branch hanbing2/gitlab-usage-demo-master # 转移到该新建立起来的分支上继续作业 git checkout hanbing2/gitlab-usage-demo-master # 完成修改后推送远程服务器端保存副本记录 git add . git commit -m "Add usage demo" git push origin hanbing2/gitlab-usage-demo-master # 将更改整合入主干部分 git checkout master git merge hanbing2/gitlab-usage-demo-master git push origin master ``` 值得注意的是,在实际应用过程中还需要严格遵守企业内部制定的各项规定限制条件,比如某些场景下可能不允许随意开设额外分支等情况发生[^2]。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MichaelYZ111

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值