git hooks常用钩子

想要了解详细的请移步:git钩子

我们日常主要使用的有两个:

git hook调用时机说明
pre-commit

gitcommit执行前

它不接受任何参数,并且在获取提交日志消息并进行提交之前被调用

脚本git commit以非零状态退出会导致命令在创建提交之前中止

可以用git commit --no-verify绕过
commit-msg

git commit执行前

可用于将消息规范化为某种项目标准格式

还可用于检查消息文件后拒绝提交

可以用git commit --no-verify绕过

简单介绍下这两个钩子:

git commit:会在提交前被调用,并且可以按需指定是否要拒绝本次提交

commit-msg:可以用来规范化标准格式,并且可以按需指定是否要拒绝本次提交

步骤:安装两个工具(需要npm 7.X以上)

commitlint:检查提交信息

husky:git hooks 工具


commitlint:

1.安装依赖:

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

2.创建commitlint.config.js文件

echo "module.exports = {extends:['@commitlint/config-coventional']}">
commitlint.config.js

3.打开commitlint.config.js,增加配置项(config-conventional)

module.exports = {
  // 继承规则
  extends: ["@commitlint/config-conventional"],
  // 定义规则类型
  rules: {
    // type 类型定义.标识git提交的type必须在以下类型范围内
    "type-enum": [
      2,
      "always",
      [
        "feat", //新功能feature
        "fix", //修复bug
        "docs", //文档注释
        "style", //代码格式
        "refactor", //重构
        "perf", //性能优化
        "test", //增加测试
        "chore", //构建过程或辅助工具的变动
        "revert", //回退
        "build", //打包
      ],
    ],
    // subject 大小写不做校验
    "subject-case": [0],
  },
};

注:保存格式必须为utf-8


hushy:

1.安装依赖:

npm install husky@7.0.1 --save-dev

2.启动hooks,生成 .husky文件夹

npx husky install

3.

(1):方法1   在package.json中生成prepare指令(npm > 7)

(2):方法2  也可以终端输入

npm set-script prepare "husky install"

 4.执行 preparse指令

npm run prepare

5.等待执行成功

6.添加commitlint的 hook 到 husky中,并指令在commit-msg 的hooks 下执行 npx --no-install commitlint --edit "$1" 指令

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值