前端优化之路:git commit 校验拦截

【前言】

前面在git分支规范那篇文章里,介绍了commit提交规范,如下图

但是想要做到高效落地执行,就需要做些别的功课,先展示下成果图

没错,对不符合规范的commit进行了拦截,符合才可以成功提交。

【前期准备】

需要了解git hooks,它是git的钩子,就像vue拥有自己的钩子一样

官方文档:https://git-scm.com/docs/githooks

本次优化中,只需要使用 commit-msg 钩子,它不仅可以实现 commit拦截,还能实现merge拦截

项目安装 husky,建议稳定版本4.3.8

npm install husky@4.3.8

【项目配置】

在项目package.json中,与scripts同级层配置钩子,npm run xxx,xxx为自定义的脚本执行命令

在scripts中配置脚本命令。xxx 为自定义的脚本名,会使node打开并执行指定目录下的js脚本文件,所以node后跟着的是自定义的脚本存放地址

【自定义脚本】

在上述脚本执行路径创建commit-msg.js,文件名自定义,对应上面的路径就行。

先引入fs工具包,不用安装,它是node的工具包。

自定义提交类型(type)

为了提示信息能够醒目,自定义颜色(如果无需醒目,这步可省略)

自定义基本提示语

获取commit相关对象

对三种情况进行校验,提示并拦截

另外,还可配置merge的拦截

到这里,就配置完成了,达到了预期效果

相关推荐
fengyehongWorld5 小时前
Git 认证凭据管理
git
暮云星影13 小时前
git版本发布
git·gitee·github·gitea
乌夷13 小时前
Git Flow 分支模型
git
独隅14 小时前
VS Code Git 工作树多分支并行开发实战评测
git
暮云星影19 小时前
git仓库分支管理
git·gitee·github·gitea
互联网中的一颗神经元2 天前
ZZ — Git 速查表
大数据·git·elasticsearch
早安试言2 天前
git使用
git
燐妤2 天前
梦绘片场 ProjectDream故事总纲场景剧本篇:从项目到成片的 AI 漫剧工作台
人工智能·git·ai·项目开发
JackieDYH2 天前
Git 与 GitHub 新电脑配置指南(从零开始)
git·github·工具·使用教程
Jeanyia3 天前
GitLab 配套 Git 常用命令
git·gitlab