可以使用 Git Hook 来强制检测提交规范。
Git Hook 是 Git 软件中一种自定义事件处理器,可以让开发者在 Git 的预定事件上挂载自己的脚本,在 Git 软件执行相应的操作时,运行脚本来定制操作细节。
可以通过编写 pre-commit Hook,在代码提交前进行检测,保证代码的规范。
以下是一个简单的 pre-commit Hook 脚本示例,其中包含了一些代码规范检测的命令:
#!/bin/bash RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[0;33m' NC='\033[0m' function check_code { cd $(git rev-parse --show-toplevel) # change to your git root directory # run your code checks here # e.g. pylint, flake8, black, isort, etc. # use && to separate multiple commands pylint */*.py && \ flake8 . && \ black --check . && \ isort --check-only . } if check_code; then printf "${GREEN}Code style check passed!${NC}\n" exit 0 else printf "${RED}Code style check failed! Please fix the errors.${NC}\n" exit 1 fi
将上述脚本内容保存为 pre-commit 文件,并放置在你的 Git 项目的 .git/hooks 目录下即可。
在使用时,每次执行 git commit
命令时会执行 pre-commit Hook 脚本,如果检测到代码规范不符合要求,则会阻止提交,并输出错误信息。