husky的使用

husky可以让我们向项目中方便添加git hooks

  1. 将husky添加到项目的开发依赖中
pnpm add husky -D
  1. 在packgae.json中添加prepare脚本
 "scripts": {
    "prepare": "husky install"
  },

prepare脚本会在pnpm install之后自动执行。也就是说当我们执行pnpm install安装完项目依赖后会执行 husky install命令,该命令会创建.husky目录并指定该目录为git hooks所在的目录。

  1. 添加git hooks,运行一下命令创建git hooks
npx husky add .husky/pre-commit "npx lint-staged"

运行完该命令后我们会看到.husky目录下新增了一个名为pre-commit的shell脚本。

#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"

echo "========= 执行pre-commit操作 ======="
npx lint-staged

在项目中我们会使用commit-msg这个git hook来校验我们commit时添加的备注信息是否符合规范。

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

运行完该命令后我们会看到.husky目录下新增了一个名为commit-msg的shell脚本。

#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"

echo "========= 执行commit-msg校验 ======="
npx --no-install commitlint --edit "$1"
  1. 配置完成后,需安装@commitlint/cli和@commitlint/config-conventional两个插件(代码提交检测)
pnpm add @commitlint/cli @commitlint/config-conventional -D

自动化工具的使用

mrm
它可以一键安装基于 JavaScript 项目所需的一切,详细的请参考官方文档。

git init && npx mrm package editorconfig gitignore eslint prettier lint-staged

你可能感兴趣的:(husky的使用)