commit-msg 过滤 git 提交信息

开发过程中,记得规范你的 commit msg 规范 commit msg 的意义 规范化、格式化的 commit message 可以让我们更好的追踪需求的演进、回滚时能够快速的找到提交、最次也能让我们的仓库显的更专业。 团队如何规范 commit msg呢,靠宣讲、靠文档?当然得靠工具生成和约束。前端圈轮子那么多,这种工具不在话下。 commitizen 问答式生成 commit msg格式化 commitlint 校验卡控 commit msg规范化 commitizen commitizen: simple commit conve.. 阅读详情

前言

以前虽然干过持续集成的工作,但好多都是只干了一半。

好多捣鼓都没有留下文字记录,趁最近比较空闲,留点东西,以后也好找。


方法

文件:.git/hooks/commit-msg

添加如下内容:

result=$(grep -E '^\[(dev|release)\]\[[0-9]+\]\[(none|test)\][0-9a-zA-Z]{3,30}' $1)
text_std=$(cat $1)
if [ "$result" = "$text_std" ];then
	echo $result
else
	echo '请按规范填写commit-msg'
	exit 1
fi

正则表达式手册

按照自己的需求修改正则表达式,这里的出错提示我偷懒了(建议做个格式说明的网页)


备注

真实场景是配合gerrit server使用的,至于要放到server的什么地方,还未测试。

【知识整理】Git Commit Message 规范 前面咱们整理过Code Review 一文,提到了 Review 的重要性,已经同过gitlab进行CodeReview 的方式,那么本文详细说明一下对CodeReivew非常重要的Git Commit Message 规范。我们在每次提交代码时,都需要编写 Commit Message,否则是不允许提交的。书写好的 Commit Message 能大大提高代码维护的效率。避免开发人员在项目中群魔乱舞,搞得代码一团糟,搞的项目就被糟践了。且开发日后的维护,都将是灾难。 阅读详情

相关推荐

好的Git Commit Msg应该怎么写?

git commit 是很小的一件事情,但是往往小的事情往往引不起大家的关注,不妨打开公司的 gitlab 上的任一个 repo,查看 commit log,满篇的 update 和 f...

咻咻ing的专栏 1283

gitHooks: commit-msg

gitHooks: commit-msg

snow的博客 4639

在git commit时利用AI自动生成并填充commit信息

本文介绍了一款利用AI自动生成git commit信息的工具,通过git钩子机制在提交时获取代码改动,调用内部AI模型分析并生成格式规范的commit信息,自动填充到编辑界面。工具包含三个核心部分:使用git diff获取修改内容、调用AI接口生成标准格式的commit信息、将结果写入提交文件。该方案能有效规范提交信息,减少人工填写负担,同时需注意代码安全仅使用内部AI服务。工具需要Python环境支持,部署简单,实际使用中可通过优化提示词和过滤策略进一步提升效果。

TangYuanTuoHai的博客 1560

commit-msg文件的意义

commit-msg` 钩子在提交消息被提交之前触发,允许你检查和修改提交消息。要使用`commit-msg`钩子,你需要在Git仓库的`.git/hooks`目录下创建一个名为`commit-msg`的脚本文件,并确保它是可执行的。默认情况下,`.git/hooks`目录中的钩子示例都是禁用的(文件扩展名为`.sample`)。这个脚本使用`grep`来检查提交消息是否以`feat:`、`fix:`等允许的前缀之一开始。除了校验,`commit-msg` 钩子也可以用来自动向提交消息添加信息。

qq_37796239的博客 1364

别只会git commit --amend了!深入理解Git钩子,从根源上解决Missing Change-id问题

本文深入解析Git钩子机制,特别是commit-msg钩子在解决Missing Change-id报错中的应用。通过分析Gerrit的Change-id设计哲学和实现细节,帮助开发者理解如何利用Git钩子自动化提交规范,提升团队协作效率。

culing2941的博客 516

git pr/mr 提交规范

说在前面 我们希望每个 mr 尽量⽐较单⼀,不要涉及太多复合的内容。这样便于 review,必要时也便于回滚。 这⾥定义了 mr 提交时,title 和 message 的⼀个规范,如果可以的话,最好每个 commit 都遵循这个规范。 定义规范的好处是: 提供更多的信息,⽅便排查与回滚; 过滤关键字,迅速定位. mr title 的规范 形式化定义: <type>(<scope>): <subject> 其中,各个域的说明如下: type:⽤于说明这次 mr/

我的博客 1万+

2024年大数据最新【知识整理】Git Commit Message 规范_git commit msg 规则(2),2024年最新熬夜整理小米大数据开发面试题

fix(common): 修复字体过小的BUG,将通用管理下所有页面的默认字体大小修改为 14pxfeat(*): 添加网站主页静态页面这是一个示例,假设对点检任务静态页面进行了一些描述。这里是备注,可以是放BUG链接或者一些重要性的东西。

2401_84573307的博客 420

modelsim软件安装教程及踩坑(极简版)

1.安装的网盘链接:链接:https://pan.baidu.com/s/1ltUfssyXlCnqDmLhWyhlwA提取码:jery 2.步骤(参考博文):https://blog.youkuaiyun.com/weixin_42693097/article/details/90523692?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163521788716780357213801%2522%252C%2522scm%2522%253A%2522

subtitle_的博客 3780

用三层防线规范AI的Git提交:AGENTS.md+Git Hooks实战

随着AI编程工具(如Cursor、Claude Code、Codex)的普及,AI生成的代码提交频繁出现“一把梭提交”“密钥裸奔”“提交信息乱写”等乱象。其根源并非AI能力不足,而是缺少可执行的边界约束。本文从版本控制的基础概念出发,讲解如何通过AGENTS.md意图约束、Git Hooks执行校验、CI结果审计三层防线,将Git提交规范前置落实到AI每次操作之前。这套工作流覆盖敏感文件拦截、Conventional Commits格式校验、分支保护等典型场景,帮助团队在享受AI生产力的同时,确保提交历史清

weixin_28836507的博客 278

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

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

weixin_51130221的博客 4万+

GB28181协议实战:5分钟搞定海康摄像头SIP注册失败问题(附Wireshark抓包分析)

本文详细解析了海康摄像头在GB28181协议下SIP注册失败的7个关键原因及解决方案,包括网络可达性、鉴权参数、NAT穿越等核心问题。通过Wireshark抓包分析,提供快速定位方法,帮助工程师高效解决SIP注册失败问题,提升实时图像联调效率。

weixin_29212867的博客 551

Codex 写 Commit 你做“全自动“:Git Hook + AI 让 commit message 不再纠结

程序员普遍为写 commit message 烦恼:敷衍难追溯,啰嗦碍评审。文章提出用 Git Hook + AI 在本地提交时自动生成符合 Conventional Commits 规范的 message,实现有标准、有质量、可追踪。内容涵盖规范简述、三种 AI 介入粒度,重点分享完全自动的钩子脚本实现,强调人为不可靠,用 AI 接管提交信息生成。

小二丶的博客 255

蓝桥杯单片机学习13——NE555方波发生器&频率测量

NE555详解、引脚图介绍、原理图及工作原理讲解、方波产生的原理、定时器测量频率的原理及使用方法、代码实现

weixin_67907028的博客 1万+

Codex 写 Commit,你敢全自动吗?——TaoToken 统一 Key 下的效率与风险实测

用 prepare-commit-msg 钩子让 Codex 生成 Commit 初稿,先跑敏感词过滤脚本再放行。本文给出 TaoToken 统一 Key 的 config.toml 配置、可复制钩子与拦截脚本,并实测 401、local proxy failed、reading choices 等报错排查,官网见 https://taotoken.net/?utm_source=taotoken_aicg_blog_end 。

weixin_36178216的博客 227

全球建筑物提取数据集(免费下载):微软/GlobalMLBuildingFootprints

这个是GitHub上的开源数据集: https://github.com/microsoft/GlobalMLBuildingFootprints 介绍 必应地图正在世界各地发布开放式建筑足迹。我们从 2014 年到 2021 年间的 Bing Maps 图像中检测到了 7.77 亿座建筑物,包括 Maxar 和 Airbus 的图像。数据可在 ODbL 下免费下载和使用。该数据集补充了我们的其他版本。 包括的地区 执照 此数据由 Microsoft 根据Open Dat..

此星光明博客 6289

WordPress MasterStudy LMS插件 SQL注入漏洞复现(CVE-2024-1512)

WordPress Plugin MasterStudy LMS 3.2.5 版本及之前版本存在安全漏洞,该漏洞源于对用户提供的参数转义不足,导致可以通过 /lms/stm-lms/order/items REST 路由的 user 参数进行基于联合的 SQL 注入。

0xSec 1437

open-code-review:基于本地LLM与Git钩子的轻量级代码审查范式

代码审查是保障软件质量的基础工程实践,其核心在于在开发早期识别缺陷、规避风险并统一规范。随着大语言模型(LLM)能力成熟,如何将AI深度融入日常开发流程而非作为外部辅助工具,成为开发者关注焦点。本地化LLM因其数据不出域、响应确定性强、可私有部署等特性,正成为企业级代码审查的新技术底座;而Git深度集成则让审查自动触发于commit环节,实现‘零感知、高时效、强可控’。本文围绕open-code-review这一新兴实践范式,详解其如何通过CLI工具链、预提交钩子、结构化Prompt与安全沙箱机制,构建兼顾

weixin_30129025的博客 296

【华为OD机试】真题A卷-Linux发行版的数量(Python)

【华为OD机试】真题A卷-Linux发行版的数量(Python):Linux操作系统有多个发行版,distrowatch.com提供了各个发行版的资料。这些发行版互相存在关联,例如Ubuntu基于Debian开发,而Mint又基于Ubuntu开发,那么我们认为Mint同Debian也存在关联。 发行版集是一个或多个相关存在关联的操作系统发行版,集合内不包含没有关联的发行版。给你一个nxn的矩阵isConnected,其中isConnected[i][i]=1表示第i个发行版和第j个发行版直接

u014481728的博客 943

Git 提交的正确姿势:Commit message 编写指南

Git 提交的正确姿势:Commit message 编写指南 文章目录 一、Commit message 的作用 二、Commit message 的格式 2.1 Header 2.2 Body 2.3 Footer 2.4 Revert 三、Commitizen 四、validate-commit-msg 五、生成 Change log http://www.ruany......

一年又一年。的专栏 1992

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

关于Commit message代码提交

Commit message代码提交规范 目录相关参考链接 相关参考链接 Commit message 代码提交规范 Git 提交的正确姿势:Commit message 编写指南 commit message格式规范 Commit message 和 Change log 编写指南 Git 提交的正确姿势:Commit message 编写指南 【Git学了就忘-实操(二)】修改已提交commit的message commit message:提交说明 ...

小羊咩咩的博客 2372

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

用零依赖Rust工具gitru强制规范Git提交信息,告别杂乱commit历史

在团队协作中,Git提交信息是代码历史的“说明书”,但杂乱无章的commit message常让回溯与排查变得异常困难。要解决这一问题,业界通常会引入提交信息校验工具,在commit-msg钩子阶段拦截不符合规范的提交。与传统基于Node.js的commitlint方案相比,零依赖、单二进制交付的Rust工具具备启动快、免安装运行时、易于分发到CI和容器的优势,正逐渐成为工程实践中的轻量级选择。通过配置TOML规则,团队可自定义type、scope、正文字数等校验项,并将钩子脚本纳入版本库统一管理,实现全组

weixin_28841265的博客 325

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

告别Slop Commit:掌握Git提交信息与历史整理实战

版本控制是现代软件协作的基石,Git 作为最流行的分布式版本控制系统,其提交历史就是团队共同的记忆库。但现实中,大量提交信息如同“fix bug”“update code”般空洞,或一次提交塞满无关改动,形成被称为 Slop Commit 的低质量记录,令代码追溯、问题定位与回滚举步维艰。要解决这一问题,需从提交的本质出发:利用 git commit --amend 重写最近提交,通过 git rebase -i 整理历史,使用 git reset --soft 配合 git add -p 拆分混合提交,并

weixin_28839629的博客 167

git PHP commit 规范,你可能会忽略的 Git 提交规范

一、为什么需要规范?无规矩不成方圆,编程也一样。如果你有一个项目,从始至终都是自己写,那么你想怎么写都可以,没有人可以干预你。可是如果在团队协作中,大家都张扬个性,那么代码将会是一团糟,好好的项目就被糟践了。不管是开发还是日后维护,都将是灾难。这时候,有人提出了何不统一标准,大家都按照这个标准来。于是 ESLint,JSHint 等代码工具如雨后春笋般涌现,成为了项目构建的必备良品。Git Co...

weixin_39926040的博客 192

git-secrets 使用指南:在提交前拦截密码与敏感信息

git-secrets 是一款以单个 Bash 脚本实现的 Git 安全工具,用于在**提交(commit)、提交信息(commit message)与非快进(`--no-ff`)合并**三个阶段扫描 Git 仓库,防止密码、访问密钥等敏感信息被写入版本库。本文以仓库根目录下的 [README.rst](https://link.gitcode.com/i/d6598ee6c5eb5accde53

gitblog_01002的博客 912

Git 提交规范-Java程序员收藏必备

你可能会忽略的 Git 提交规范 规范是建立在程序开发者与程序阅读者一个沟通的桥梁,是一个团队必须要严格遵守的约定 ——动力节点Java学院 一、为什么需要规范? 无规矩不成方圆,编程也一样。 如果你有一个项目,从始至终都是自己写,那么你想怎么写都可以,没有人可以干预你。可是如果在团队协作中,大家都张扬个性,那么代码将会是一团糟,好好的项目就被糟践了。不管是开发还是日后维护,都将是灾难。 这时候,...

weixin_40599844的博客 953
上一篇: gogs 触发 jenkins 任务
下一篇: robot framework 初学
cluse
博客等级 码龄19年 29粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值