Files
super_video/HUSKY_SETUP.md
T

1.7 KiB

Husky 配置说明

已安装的依赖

  • husky: Git hooks 管理工具
  • lint-staged: 对暂存文件运行 linters
  • @commitlint/cli: Commit 信息验证工具
  • @commitlint/config-conventional: 约定式提交规范

配置内容

1. Pre-commit 钩子

在每次 commit 前自动执行:

  • ESLint 检查和自动修复
  • Prettier 代码格式化

2. Commit-msg 钩子

验证 commit 信息格式,必须符合约定式提交规范:

格式: <type>(<scope>): <subject>

允许的 type 类型:

  • feat: 新功能
  • fix: 修复 bug
  • docs: 文档更新
  • style: 代码格式调整
  • refactor: 代码重构
  • perf: 性能优化
  • test: 测试相关
  • build: 构建相关
  • ci: CI/CD 相关
  • chore: 其他杂务
  • revert: 回滚提交

规则:

  • subject 最大长度: 50 字符
  • body 每行最大长度: 100 字符
  • subject 不能使用句首大写、帕斯卡命名等格式

3. Prettier 配置

已创建 .prettierrc 配置文件,统一代码格式:

  • 不使用分号
  • 使用单引号
  • 缩进 2 个空格
  • 行宽限制 100 字符
  • 不使用尾随逗号

使用方法

正常提交

git add .
git commit -m "feat: 添加新功能"

如果 commit 信息不符合规范

git commit -m "invalid message"
# 会提示错误并要求修改

手动运行检查

# 检查代码格式
npx lint-staged

# 检查 commit 信息
echo "feat: 测试" | npx commitlint

注意事项

  1. 确保使用 nvm use 22.14 切换到正确的 Node.js 版本
  2. 使用 pnpm 作为包管理器
  3. 所有代码在提交前会自动进行格式化和检查
  4. 如果检查失败,commit 会被阻止,需要修复后重新提交