pre-commit 多语言pre-commit hooks 框架 基于python 开发,功能很强大
参考使用
- 安装
pip install pre-commit
- 添加配置
.pre-commit-config.yaml
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v2.3.0
hooks:
- id: check-yaml
- id: end-of-file-fixer
- id: trailing-whitespace
- repo: https://github.com/psf/black
rev: 22.10.0
hooks:
- id: black
- 运行测试
pre-commit run --all-files
- 自动修复处理
说明
pre-commit 是一个很不错的工具,不只是可以在我们的编码中使用,当然也可以应用到ci/cd 中数据开发中,或者基础设施配置管理中
比如社区就有一个支持dbt 的bt-checkpoint 也是基于了pre-commit 框架开发的,很不错值得试用下,nodejs 的husky 是前端同学使用
比较多的一个
参考资料
https://pre-commit.com/
https://github.com/pre-commit/pre-commit
https://github.com/psf/black
https://github.com/dbt-checkpoint/dbt-checkpoint
https://github.com/pre-commit/demo-repo#readme
https://typicode.github.io/husky/
https://github.com/typicode/husky