pre-commit 使用说明
本项目已配置 pre-commit 钩子,用于在提交代码时自动进行代码规范检查和格式化。
安装与初始化
pip install pre-commit
pre-commit install --hook-type commit-msg
pre-commit install
手动运行检查
pre-commit run --all-files
pre-commit run --hook-stage commit-msg --commit-msg-filename .git/COMMIT_EDITMSG
配置详情
本项目使用以下两组钩子:
- conventional-commit: 检查提交消息是否符合 Conventional Commits 规范
- add-signoff-and-change-id: 自动添加 Sign-off-by 和 Change-Id
- check-sr: 检查 .sr 文件
- check-json: 检查 JSON 文件
- check-yaml: 检查 YAML 文件
- prettier: TypeScript / Vue / CSS / JSON 等文件自动格式化
- trailing-whitespace: 修复行尾多余空白(排除 .vscode/)
- end-of-file-fixer: 修复文件末尾缺少换行(排除 .vscode/)
- check-merge-conflict: 检查合并冲突标记
- check-added-large-files: 防止提交大文件(限制 1024KB)
- check-case-conflict: 检查文件名大小写冲突
- detect-private-key: 检测私钥泄露
许可证
Mulan PSL v2 许可证,详见 LICENSE 文件