按照操作将会在项目的.git/hooks下生成一个pre-commit文件(覆盖原pre-commit文件),该hook会根据项目根目录下的.pre-commit-config.yaml执行任务。如果vim .git/hooks/pre-commit可以看到代码的实现,基本逻辑是利用pre-commit文件去拓展更多的pre-commit,这个和我上一篇文章的逻辑是类似的。 安装/卸载其他阶段的hook。
除了pre-commit 的内置钩子,还有许多自定义的、第 3 方流行的钩子可供选择。例如,如果想使用 Black 作为钩子应用格式检查,可以利用 Black 的 pre-commit 钩子。 # Inside .pre-commit-config.yaml ... - repo: https://github.com/psf/black rev: 20.8b1 hooks: - id: black args: [] files: . ......
# Inside .pre-commit-config.yaml ... - repo: https://github.com/psf/black rev: 20.8b1 hooks: - id: black args: [] files: . ... 这个特定的钩子在 Black 存储库中的.pre-commit-hooks.yaml下定义,其他自定义钩子也在其各自的包存储库下。 当地的 也可以创建自己的本地钩子,而无需配置单独...
Description fix(pre-commit-hooks)!: move 'check' to 'args' for global options Details: 'args: [...]' is not able to access '-nr NO_RAISE' global arguments for example from a arguments configuration...
pre-commit/pre-commit-hooks now requires python3.6.1+ #447 PR by @asottile. #455 PR by @asottile. flake8/pyflakeshave been removed, useflake8frompycqa/flake8instead: -repo:https://gitlab.com/pycqa/flake8rev:3.8.1hooks: -id:flake8 ...
repos:-repo:https://github.com/pre-commit/pre-commit-hooksrev:v2.3.0hooks:-id:check-yaml-id:end-of-file-fixer-id:trailing-whitespace-repo:https://github.com/psf/blackrev:22.10.0hooks:-id:black 3. Install the git hook scripts
开发人员在push代码(pull, commit的时候不会报错)的时候如果备注长度小于5个英文字符,就会提示报错: image.png 改进 限制提交的comments备注必须为三行,第一行至少18个英文字符,第二行为空,第三行为30个英文字符 root@bob-k8s3:/srv/gitlab/data/git-data/repositories/root/pets.git/custom_hooks# cat pre-rec...
#!/bin/sh if [ -f .git/hooks/pre-commit ]; then source .git/hooks/pre-commit fi if [ -f .git/hooks/pre-push ]; then source .git/hooks/pre-push fi 确保上述脚本在 Git 的预提交和预推送钩子前运行,并调用配置好的 pre-commit 命令。 配合GitHub Actions 或 GitLab CI 进行持续集成 在...
编写第一个pre-commit hook 在项目目录中创建一个名为.pre-commit-config.yaml的配置文件,用于定义pre-commit hook。以下是一个简单的配置示例,演示了如何配置一个flake8的代码检查器: repos:-repo:https://github.com/psf/blackrev:21.12b0hooks:-id:black ...
r'\.gitlab-ci\.yml$', r'\.gitlab-ci\.d$', ], ), ], ), ChangesMatcher( commit_scope='hooks', types=[ ChangesType( commit_type='chore', changes=[ r'^\.hooks', ], ), ], ), ChangesMatcher( commit_scope='gitignore', types=[ ChangesType( co...