IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> Git 提交规范(二、使用husky控制git hook) -> 正文阅读

[开发工具]Git 提交规范(二、使用husky控制git hook)

Git 提交规范(二、使用husky控制git hook)

接上第一节使用commitizen设置快捷commit规范,这一次我们对git的hook进行控制,让团队中成员无法随意提交commit,保证仓库中的备注规范性和一致性

本次用到插件

  • commitlint:用于检查提交信息
  • husky:拦截git hooks工具

Git提交规范(一、使用commitizen)

1.安装所需插件

npm install --save-dev @commitlint/config-conventional @commitlint/cli

请添加图片描述

2.创建commitlint.config.js文件

在项目的根目录下,创建commitlint.config.js文件

请添加图片描述

将下列代码加入刚才创建的文件中

module.exports = {
    // 继承的规则
    extends: ['@commitlint/config-conventional'],
    // 定义规则类型
    rules: {
        // type 类型定义,表示 git 提交的 type 必须在以下类型范围内
        'type-enum': [
            2,
            'always', [
                'feat', // 新功能 feature
                'fix', // 修复 bug
                'docs', // 项目文档或注释变更
                'style', // 仅仅修改了空格、格式缩进、逗号等等,不改变代码逻辑
                'refactor', // 代码重构,没有加新功能或者修复bug
                'perf', // 优化相关,比如提升性能、体验
                'test', // 增加测试
                'chore', // 改变构建流程、或者增加依赖库、工具等
                'revert', // 回滚到上一个版本
                'build', // 部署版本
            ],
        ],
        // subject 大小写不做校验
        'subject-case': [0],
    },
}

这里的git提交规范最好与上一节你所定义的commit规范一致

husky

1.安装依赖

npm install husky --save-dev

请添加图片描述

2.启动hooks

npx husky install

启动后,将会自动生成.husky文件夹

请添加图片描述

3.添加prepare指令

通过npm设置preapre指令

npm set-scrip prepare "husky install"

请添加图片描述

运行指令

npm run prepare

请添加图片描述

4.添加commitlint的hook到husky

npx husky add .husky/commit-msg 'npx --no-install commitlint --edit "$1"'

运行指令后,文件内容将根据设置自动生成

请添加图片描述

5.测试

现在进行测试,首先同样的git add .

尝试一个不和规范的提交

git commit -m "随便提交一个东西看看?"

请添加图片描述

一个不符合提交规范的被拦下来无法commit

到这里,我们就已经可以 强制规范提交,而且不符合规范的提交,将不可被commit

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-07-21 21:44:34  更:2022-07-21 21:44:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/28 18:34:49-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计