Gitlab自动化测试的配置

1. 代码分支命名规范检测

Setting → Repository → Push rules → Branch name,添加分支命名规范对应的正则表达式。如:

^(Release|Tag|Develop|Feature).+.+|Main$

表示分支名只能以以下关键字之一开头:Release、Tag、Develop和Feature。

2. 代码log编写规范检测

Setting → Repository → Push rules → Require expression in commit messages,添加log编写规范对应的正则表达式。如:

^(feat|fix|docs|style|refactor|impr|perf|sync|test): .+|Merge .*branch '.+' .*|Revert .+

表示提交的log必须满足以下条件之一:

  1. 以【以下关键字之一 + 半角冒号 + 空格】开头:"feat: "、"fix: "、"docs: "、"style: "、"refactor: "、"impr: "、"perf: "、"sync: "或"test: "。
  2. 以"Merge"开头,后跟任意文本,然后是"branch ",再后跟用单引号括起来的任意文本,最后是任意其他文本的提交消息,如"Merge branch 'development' into main"。
  3. 以"Revert"开头,后跟一个或多个字符的提交消息,如"Revert 'Fix issue #123'"。

3. 代码分支保护

Setting → Repository → Protected branches / Protected Tag,可设置某一分支或者某一类分支关于merge和push的权限。

4. merge的冒烟测试

Setting → General → Merge Requests → Merge options → 勾选"Enable merged results pipelines",表示冒烟测试是测试merge后的代码。

Setting → General → Merge Requests → Merge options → Merge checks → "Pipelines must succeed",表示必须冒烟测试通过才能merge成功,否则即使是人工点击merge也不会合并到目标分支。

未完待续......

相关推荐
daemon.qiang2 天前
国内虚拟机对接 Freedesktop:Fork xserver、自建 Runner 与提交 MR 实战
linux·ubuntu·centos·gitlab·开源软件
snow@li6 天前
服务器运维:K3S 下 Jenkins ↔ GitLab 的 CI/CD 闭环 / 访问成功
运维·gitlab·jenkins
旧梦星轨8 天前
Git Flow 工作流实践
git·gitee·gitlab·github
旧梦星轨8 天前
Github Flow 与 Gitlab Flow工作流实践解读
gitlab·github
极小狐11 天前
干掉流水线里的长期密钥:用 OIDC 让 CI/CD 与云以临时凭证对接
microsoft·ci/cd·gitlab·devops·ci·cd·oidc
snow@li11 天前
服务器运维:阿里云安装软件gitlab/智能体协助安装/智能体协同运维
运维·gitlab
极小狐12 天前
CI 流水线提速实战:缓存设计与依赖代理的工程实践
缓存·ci/cd·gitlab·devops
DevOps老兵13 天前
AI Infra实战11:模型部署Pipeline——CI/CD自动化
人工智能·ci/cd·ai·自动化·gitlab
极小狐13 天前
从复制粘贴到可复用组件:极狐GitLab CI/CD 组件目录实战
java·ci/cd·gitlab·devops·组件化
极小狐13 天前
用 Flow 编排 Agent 智能体:极狐GitLab Duo 自定义工作流实战
ai·gitlab·agent·devops·flow·duo