【保姆级喂饭教程】GitLab创建用户规范,分支开发规范,提交日志规范

GitLab使用规范 阅读详情
AI摘要

本文适用于小型团队,梳理了GitLab创建用户、分支开发和提交日志规范。创建用户规范涉及姓名、用户名和邮箱格式;分支开发采用Git Flow规范;提交日志推荐Conventional Commits规范。还通过微服务项目开发流程,演示了分支开发和提交日志规范的实际应用。

前言

Git 是一个分布式版本控制系统,用于管理和跟踪代码或文件的变更。是软件团队进行代码开发管理的必要工具。
GitHub、GitLab 是一个基于 Web 的 Git 仓库,由于 GitHub 的私有仓库是收费的,而 GitLab 是开源的,所以小型团队一般选择自己部署一个 GitLab。
为了更好的团队使用,这里梳理下创建用户规范,分支开发规范,提交日志规范,仅适用于小型团队。

一、创建用户规范

Name:姓名大写
UserName:姓名全拼音小写
Email:个人提供或公司统一邮箱
在这里插入图片描述


二、分支开发规范

分支开发我们选择Git Flow规范

1. Git Flow

Git Flow 是 Vincent Driessen 在 2010 年提出的一套 Git 分支管理模型,它通过 主分支(master)、开发分支(develop) 以及若干辅助分支(feature、release、hotfix 等)来规范团队协作与发布流程。
原文:A successful Git branching model
GitHub:https://github.com/nvie/gitflow
教程1:Git之GitFlow工作流 | Gitflow Workflow(万字整理,已是最详)
教程2:git flow
安装:【保姆级喂饭教程】Windows下安装Git Flow

总结一下核心部分:

分支类型来源目的合并目标
master—保存可发布的历史版本;每次发布都会在此打 tag—
developmaster日常开发集成;累积新的功能和改动—
feature/XXXdevelop开发新功能或业务需求;独立进行直至功能完成develop
release/XXXdevelop预发布准备:修复 bug、更新版本号、编写文档;上线前的最后调试master、develop
hotfix/XXXmaster紧急修复生产环境问题;快速修补并生成新版本master、develop

2. 个人推荐

个人推荐分支命名规范,功能看需求可选

  • feature分支:开发人员姓名缩写-包模块-子模块-功能
  • release分支:版本号-版本代号
  • hotfix分支:年月日-开发人员姓名缩写-issue-序号/bug-错误内容

三、提交日志规范

提交日志规范我们选择行业最为广泛的规范Conventional Commits

1. Conventional Commits

官网:英文 | 中文
GitHub:https://github.com/conventional-commits/conventionalcommits.org
教程1:Git 提交注释规范(Conventional Commits)详解与实践推荐
教程2:拯救你的Commit Log:Conventional Commits实践指南
插件:【保姆级喂饭教程】idea中安装Conventional Commit插件

Conventional Commits 是一种对 Git 提交信息进行结构化的规范。它建议每条提交都遵循如下格式:

<type>[optional scope]: <description>

[optional body]

[optional footer(s)]
  • type:本次提交的类型(如 feat、fix、docs 等)
  • scope(可选):本次更改影响的范围或模块
  • description:简要描述更改内容
  • body(可选):详细描述
  • footer(可选):破环性更新或关联 issue
type类型描述
fix类型 为 fix 的提交表示在代码库中修复了一个 bug(这和语义化版本中的 PATCH 相对应)。
feat类型 为 feat 的提交表示在代码库中新增了一个功能(这和语义化版本中的 MINOR 相对应)。
build用于修改项目构建系统,例如修改依赖库、外部接口或者升级 Node 版本等。
chore用于对非业务性代码进行修改,例如修改构建流程或者工具配置等。
ci用于修改持续集成流程,例如修改 Travis、Jenkins 等工作流配置。
docs用于修改文档,例如修改 README 文件、API 文档等。
style用于修改代码的样式,例如调整缩进、空格、空行等。
refactor用于重构代码,例如修改代码结构、变量名、函数名等但不修改功能逻辑。
perf用于优化性能,例如提升代码的性能、减少内存占用等。
test用于修改测试用例,例如添加、删除、修改代码的测试用例等。

2. 个人推荐

一般除了发布版本不用写详细描述,一行即可,type类型也不定局限与推荐的这些,可以根据自己需要自定义一些,下面整理一下个人推荐规范

<type>(包模块/子模块): <description>
type类型描述
build构建项目,创建模块,修改全局配置,修改pom文件等
feat新增加一个功能,从0到1的时候使用
dev开发一个功能,从1到100的时候使用
opt优化功能代码,优化算法,优化性能,从100到120的时候使用
test提交测试相关代码
docs用于修改文档,添加资料
fix用于在代码库中修复了一个 bug

build整体项目的时候用root
备用可选:add,revise,refine

四、实际开发案例

这里通过一个实际的微服务项目开发流程来演示分支开发规范和提交日志规范

1. 搭建项目

在gitlab中创建项目作为远程仓库
在这里插入图片描述
创建本地项目
在这里插入图片描述
创建本地git仓库
在这里插入图片描述
连接远程仓库,在idea中第一次提交后push会有定义远程仓库
在这里插入图片描述
name要填origin,url填gitlab中的clone地址
在这里插入图片描述
这里我之前填了项目名,看起来不好看,下面修改一下
在这里插入图片描述
修改远程仓库名称

git remote rename 旧远程仓库名称 origin

在这里插入图片描述
这样看着好多了
在这里插入图片描述
或者也可以重新clone一遍项目,远程仓库名称会变成默认的origin
在这里插入图片描述

2. 安装Git Flow

一键安装方式,下载压缩包,解压到git的安装目录的bin目录下
Git Flow一键安装补丁

完整教程请参考下面链接:
【保姆级喂饭教程】Windows下安装Git Flow

3. Git Flow初始化

我用的是之前的一个微服务项目,只有master分支,提交了很多次,也不同担心有什么影响
确保之前的内容已经全部提交并推送到远程了
在这里插入图片描述
直接在idea中的终端进行操作,先试下git flow,没什么问题
在这里插入图片描述
初始化,一路回车,版本前缀输入v

git flow init

在这里插入图片描述
此时分支如下
在这里插入图片描述
把develop分支推送到远程
在这里插入图片描述
点击push
在这里插入图片描述
在这里插入图片描述
此时gitlab上有两个内容完全一样的分支
在这里插入图片描述

4.feature分支

此处连续演示三个功能分支,第一个创建一个新的模块给同事用,第二个创建一个功能分支公共使用,第三个创建一个功能分自己开发用

4.1 feature分支1

这个分支创建一个模块给同事用,是一个简单的本地功能分支,不需要推送远程

创建分支

git flow feature start zcy-engine-data

日志说明是基于develop分支创建了功能分支,使用git flow的好处就是无论当前在哪个分支,执行前都会自动基于develop/master分支创建功能分支
在这里插入图片描述
在这里插入图片描述
创建模块后提交,注意提交日志格式
在这里插入图片描述
由于只创建一些文件,所以也不用推送到gitlab,等合并到develop分支再推送,直接结束当前分支

git flow feature finish zcy-engine-data

在这里插入图片描述
finish后自动切换到develop分支,推送之前先拉取,防止远程冲突,有冲突在本地解决
在这里插入图片描述
关于两种分支合并方式,这里简单推荐两个教程,正常用merge就行
你合并代码用 merge 还是用 rebase ?
合并分支代码的2种选择?
在这里插入图片描述
把develop分支推送到远程
在这里插入图片描述
在这里插入图片描述
这样一个简单功能就完成了,之后同事拉取后再次创建自己的功能分支即可

4.2 feature分支2

这个分支创建一个文档分支,是一个长期的功能分支,需要推送到远程
后续相同命令就不再截图展示了

  • 创建feature分支
git flow feature start zcy-resources
  • 添加一个规范文件,并提交至本地
  • 同develop分支最开始一样,创建feature远程分支并推送
  • 切换到develop分支
    在这里插入图片描述
  • 拉取develop分支
  • 合并feature功能分支到当前develop分支
    在这里插入图片描述
  • 推送develop分支

如果你有专门的审计团队,也可以全程在gitlab上申请分支合并,经过审查后再执行合并,本地develop分支只做拉取。
gitlab合并分支代码

如果另一个同事也需要开发这个分支,可以在本地创建一个同样名称的功能分支再连接远程,也可以直接从远程下载

git flow feature track zcy-resources

4.3 feature分支3

这个分支创建一个功能分支,是一个长期的功能分支,需要推送到远程

  • 创建feature分支
git flow feature start zcy-engine-tokenizer
  • 对于确定长期的分支,可以先创建远程仓库,之后更新分支就可以提交加推送了

  • 修改功能代码,提交同时推送到远程仓库
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • feature分支需要每日推送工作进度,可以在功能初步完成时合并到develop分支,切换到develop分支

  • 拉取develop分支

  • 合并feature功能分支到当前develop分支

  • 推送develop分支

4.4 feature分支2

假设功能分支3和功能分支2有关联,那么在继续开发功能分支2之前需要同步develop分支的内容

  • 切换到feature功能分支2
  • 把develop分支合并到当前功能分支
    在这里插入图片描述
  • 继续开发改动一些文件
  • 提交并推送到远程feature分支
  • 切换到develop分支
  • 拉取develop分支
  • 合并feature功能分支到当前develop分支
  • 推送develop分支

这样,就实现了简单的功能开发和团队协作

5. release分支

最后再演示一下release分支,假设我们已经开发一段时间,发布第一个小版本上线测试

创建分支

git flow release start v4.2.0-beta.01

在feature分支下使用命令创建release分支,验证下git flow的自动切换功能
在这里插入图片描述
可以看到是从develop分支建立的
在这里插入图片描述
我们不做任何改动,直接完成

git flow release finish v4.2.0-beta.01

分析下日志,首先切换到master分支,把release分支递归合并
在这里插入图片描述
然后进入tag信息编辑,按i进入编辑,输入发布测试,按esc,输入:wq,回车
在这里插入图片描述
之后切换到develop分支,拉取,递归合并,删除
在这里插入图片描述
git flow最后也会给你输出一个操作汇总,忘记之前填了版本前缀v了,之后release分支的名称直接写版本号就好
在这里插入图片描述
再把tag推送到远程仓库

git push --tags   

在这里插入图片描述
变成vv了,哈哈
在这里插入图片描述
还差一步,分别把master分支和develop分支推送到远程,这样一个完整的开发流程就结束了

6. hotfix分支

线上出了问题,创建hotfix分支,操作流程和release流程是一样的,
提供两个名称示例

git flow hotfix start 20250707-zcy-issue-128
git flow hotfix start 20250707-zcy-bug-login

参考文献

A successful Git branching model
https://github.com/nvie/gitflow
Git之GitFlow工作流 | Gitflow Workflow(万字整理,已是最详)
git flow
【保姆级喂饭教程】Windows下安装Git Flow
Conventional Commits 英文官网
Conventional Commits 中文官网
https://github.com/conventional-commits/conventionalcommits.org
Git 提交注释规范(Conventional Commits)详解与实践推荐
拯救你的Commit Log:Conventional Commits实践指南
【保姆级喂饭教程】idea中安装Conventional Commit插件
你合并代码用 merge 还是用 rebase ?
合并分支代码的2种选择?


喜欢的点个关注吧><!祝你永无bug~

/*
                   _ooOoo_
                  o8888888o
                  88" . "88
                  (| -_- |)
                  O\  =  /O
               ____/`---'\____
             .'  \\|     |//  `.
            /  \\|||  :  |||//  \
           /  _||||| -:- |||||-  \
           |   | \\\  -  /// |   |
           | \_|  ''\---/''  |   |
           \  .-\__  `-`  ___/-. /
         ___`. .'  /--.--\  `. . __
      ."" '<  `.___\_<|>_/___.'  >'"".
     | | :  `- \`.;`\ _ /`;.`/ - ` : | |
     \  \ `-.   \_ __\ /__ _/   .-` /  /
======`-.____`-.___\_____/___.-`____.-'======
                   `=---='
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
            佛祖保佑       永无BUG
*/
Gitlab相关规范【自用】 软件开发工程师 工作流程规范总结 仅供参考 阅读详情

相关推荐

代码质量规范检测提交控制

基于Sonarqube代码检测和gitlab生命周期钩子实现对提交代码的检测控制,不符合标准的不能提交,达到控制代码质量的目的

zhao_god的专栏 1601

GitLab -- 创建新用户

登录GitLab,点击最上面的扳手图标,进入“管理区域”页面,点击“新建用户” 进入新建用户页面,输入对应信息 信息确认后,点击“创建用户” 用户创建成功后,点击“编辑”按钮 设置初始密码,设置完成后,点击“保存修改” 新建用户密码修改成功! 登录新用户 用刚才新建的用户和密码登录GitLab 第一次登录新用户需要修改密码,输入新密码后点击“设置新密码” 密码修改好后,会跳转登录页面,用新密码登录 至此,新用户添加成功 ...

DGH2430284817的博客 2万+

robomimic实验复现全流程:从数据集下载到训练视频生成

本文详细介绍了机器人模仿学习项目RoboMimic的完整实验复现流程。内容涵盖从使用Conda创建Python 3.8隔离环境、安装RoboSuite仿真器和MuJoCo物理引擎,到下载并探索数据集、配置与启动模型训练,最后进行模型评估和生成策略执行视频。该指南旨在帮助研究者和开发者高效搭建实战环境,规避常见问题,快速验证算法或应用于实际场景。

weixin_29089057的博客 518

gitlab代码提交规范

当多个人开发同一个项目时,很容易造成代码混乱,甚至是代码丢失。合理的代码提交规范,可以很好的规避这个问题。项目常用分支有三个,分别为master生产环境分支、feature-uat测试环境分支、develop-id开发分支。以下对这个三个分支和分支提交流程进行了详细介绍。

weixin_45559449的博客 932

量化回测框架三选一:Backtrader、Zipline、PyAlgoTrade,新手到底该跟谁学?

本文对比分析了三大量化回测框架Backtrader、Zipline和PyAlgoTrade,帮助新手选择最适合的入门工具。从安装配置、策略编写到文档查阅,详细解析各框架的特点和适用场景,为量化交易初学者提供实用指南。

weixin_28745309的博客 268

【知识点总结】电路原理 第一讲

大家好,从今天起,我将开始更新自上大学以来所学到的各种知识,之所以选择更新它们是因为最近我一直在收拾整理自己自上大学以来所收获到的各种知识,看着那厚厚一沓的书本心里不由得犯愁。如果我想找到特定的知识,那岂不是得翻到猴年马月。俗话说得好,下雨天打鞋子,闲着也是闲着,为此我设置一个专栏,将知识点一一分类总结,目的在于更好的整理所学的知识。本人学艺不精,有一些知识点地方可能存在瑕疵,希望各位大佬可以多多指教。以下是本篇文章正文内容虚断:一般通用性运算放大器的正反向输入端之间的电阻非常非常的大。

weixin_51130221的博客 4万+

如何规范使用Git及提交代码的要求

Git是目前最流行的版本控制系统之一,它可以帮助开发人员更好地管理代码版本,并协作开发。使用Git进行代码管理需要遵循一些规范和技巧,本文将介绍如何规范地使用Git,常用的Git命令和技巧,以及如何创建分支和提交代码。

polsnet的专栏 1735

企业AI Agent审计与合规:从日志留存到网络联动的完整落地指南

审计日志是企业安全与合规体系的基石,尤其在AI Agent大规模接入业务后,如何完整记录其行为链成为新的挑战。从日志留存180天到PCI DSS合规要求,审计体系需要覆盖会话、推理、工具调用、数据访问等关键环节,并结合不可篡改的存储设计,确保证据链可信。同时,借鉴上网行为管理设备对应用行为控制审计的思路,以及Kismet被动监测网络流量的方法论,将网络侧审计与应用侧日志交叉验证,能有效发现越权和异常行为。本文从日志采集、全链路追踪、基线预警到多租户隔离,系统梳理了AI Agent审计与合规落地的关键路径,帮

weixin_32234493的博客 267

gitlab的基本用法之创建用户和组

gitlab基本用法

qq_25096749的博客 3690

EtherCAT主站SOEM -- 19 --Qt-Soem通过CSP模式(周期同步位置模式)控制一个电机转圈圈

以上就是EtherCAT主站SOEM – 19 --Qt-Soem通过CSP模式(周期同步位置模式)控制一个电机转圈圈的内容。有不明白的地方欢迎留言;有建议欢迎留言,我后面编写文档好改进。创作不容,如果文档对您有帮助,记得给个赞。

常驻客栈的博客--嵌入式EtherCAT 1998

第1章 机器人SLAM算法工程师主要做什么的?(附SLAM学习路线及资料推荐)

对于想从事机器人与自动驾驶领域的在校大学生、研究生来说,建图定位算法工程师是一个极具发展潜力的岗位,而SLAM知识体系则是胜任该岗位的核心支撑。从基础的计算机工具、C++语言,到核心的开源框架、数学知识,再到硬件衔接与项目实践,每一个环节都不可或缺。建议大家结合自身兴趣确定侧重方向(如激光SLAM、融合定位),先通过开源项目建立实践认知,再补全理论知识,同时积极参与社区交流。

行知SLAM 953

Gitlab操作流程

Gitlab操作流程

lisus2007的专栏 9413

GD32F130之USART多机通信

简介 在多机通信中,一个从机应该只接收它需要接收的数据,且只应该在它需要接收数据时才检测串口。而始终接收RX线上的数据对从机来说是一种负担。 多机通信硬件设计 远距离方案:RS485 板级方案: 静默模式 静默模式有什么作用? 答:如果 USART 处于静默模式,所有的接收状态标志位将不会被置位。 如何进入静默模式? 答:软件可以通过将 USART_CMD 寄存器中MMCMD 位置 1 使 USART 进入静默模式。 如何从静默模式中唤醒? 答:有两种方式可选,①检测到总线

luliplus的博客 299

gitlab使用教程

1、管理员添加gitlab的用户分为管理员用户和普通用户,在界面上管理员会多了如下图所示的管理员区域,管理员拥有用户管理的功能,普通用户没有此功能。通过管理员区域的用户-添加用户,根据提示填写必要信息创建用户。2、自行注册账号在浏览器中输入gitlab的网址,点击首页的注册,填写注册信息进行账号申请。Full name :全名Username:用户名Email:邮箱地址Email confirmation:同上面邮箱地址Password:密码。

javascript_good的博客 1万+

《PCI Express体系结构导读1》-- PCI简介

请先阅读完一遍此书再来看文章哦,这样效率更高~

HoneyIC的博客 152

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Git解决方案之提交规范

提交规范的概述、示例、为什么要使用提交规范

Flyfreelylss的专栏 6348

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

团队Git规范文档(操作规范及提交规范)

在多人协作 的项目开发中,指定合理的或者部分强制的措施可以起到规范团队提升团队协作效率的作用。遵循良好的规范能让团队协作更加融洽,更能体现团队合作的巨 大优势,发挥出团队最强的能力。

Sophie_U的博客 3236

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

gitlab的使用规范

gitlab

小熊软糖的博客 680

超级详细的GitLab安装 与使用 【Gitlab添加组、创建用户和项目(1)

本人从事网路安全工作12年,曾在2个大厂工作过,安全服务、售后服务、售前、攻防比赛、安全讲师、销售经理等职位都做过,对这个行业了解比较全面。最近遍览了各种网络安全类的文章,内容参差不齐,其中不伐有大佬倾力教学,也有各种不良机构浑水摸鱼,在收到几条私信,发现大家对一套完整的系统的网络安全从学习路线到学习资料,甚至是工具有着不小的需求。最后,我将这部分内容融会贯通成了一套282G的网络安全资料包,所有类目条理清晰,知识点层层递进,需要的小伙伴可以点击下方小卡片领取哦!

2401_84140302的博客 3466

git之分支解说和提交规范-企业级(实习生一定要看)

git提交,git规范,git企业级

qq_53644827的博客 541

开发规范-GIT提交规范

代码提交规范篇 【推荐】代码提交应该短小而频繁,尽量避免单次提交大量代码。 说明:约束单次提交的范围有利于写出更加针对性的说明,也对代码审核更加友好。 反例:单次提交超过200+行的代码或20+的文件;只在休息的时候(午休、下班)提交代码;很难一句话说清楚这次提交的内容 【强制】代码提交说明应该描述本次提交的具体内容,并带上适当的前缀 feat:新功能的说明 fix:修补bug的说明 docs:增加文档、注释 style: 调整代码格式(不影响任何代码逻辑的变动) refactor:代码重构(既不是新

u010897392的专栏 1664

gitlab如何创建用户并登录

gitlab创建用户并且登录

m0_61768536的博客 1万+

git commit规范(type + description)

git代码提交规范

一个希望世界和平的前端程序猿的博客 829

Git提交规范

以下规范参考Angular提交的规范。对于如何格式化git commit消息,我们有非常精确的规则。这导致更多 在浏览项目历史时,易于理解的可读信息。但同时 我们使用git commit消息来生成基于AngularJS提供的消息模板。1、commit message format消息格式每个提交消息由一个头、一个正文和一个页脚组成。header有一个特殊的 包含类型、范围和主题的格式。header是必填的,header的范围是可选的。提交消息的任何一行不能超过100个字符!

专注于大数据方向,区块链,前后端,数据可视化,人工智能等领域 1万+

二、GitLab相关操作

GitLab相关操作一、组、用户、项目管理1.创建组2.创建项目3.创建用户并分配组3.1 创建用户3.2 设置密码3.3 给用户分配组 一、组、用户、项目管理 1.创建组 使用管理员root创建组,一个组里面可以有多个项目分支,可以将开发添加到组里面进行设置权限,不同的组就是公司不同的开发项目或者服务模块,不同的组添加不同的开发即可实现对开发设置权限的管理。 2.创建项目 3.创建用户并分配组 3.1 创建用户 3.2 设置密码 3.3 给用户分配组 总共有五种角色 Gue

青啊青斯博客 1254
上一篇: 【保姆级喂饭教程】idea中安装Conventional Commit插件
下一篇: 【保姆级喂饭教程】Idea直接在markdown中粘贴图片
荔枝吻
博客等级 码龄5年 533粉丝 161原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

打赏作者

荔枝吻

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

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

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

打赏作者

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

抵扣说明:

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

余额充值