pip install pre-commit
cd github-proj
pre-commit install
vim .pre-commit-config.yaml
# pre-commit run --all-files
.pre-commit-config.yaml
exclude: ^tests/data/
repos:
- repo: https://gitlab.com/pycqa/flake8.git
rev: 3.8.3
hooks:
- id: flake8
args: ["--max-line-length=128"]
- repo: https://gitee.com/xiaodongdong402/seed-isort-config.git
rev: v2.2.0
hooks:
- id: seed-isort-config
- repo: https://gitee.com/mirrors/isort.git
rev: 4.3.21
hooks:
- id: isort
- repo: https://gitee.com/mirrors_pre-commit/mirrors-yapf.git
rev: v0.30.0
hooks:
- id: yapf
- repo: https://gitee.com/wangjing12/pre-commit-hooks.git
rev: v3.1.0
hooks:
- id: trailing-whitespace
- id: check-yaml
- id: end-of-file-fixer
- id: requirements-txt-fixer
- id: double-quote-string-fixer
- id: check-merge-conflict
- id: fix-encoding-pragma
args: ["--remove"]
- id: mixed-line-ending
args: ["--fix=lf"]
# - repo: https://gitee.com/mirrors_markdownlint/markdownlint.git
# rev: v0.11.0
# hooks:
# - id: markdownlint
# args: ["-r", "~MD002,~MD013,~MD029,~MD033,~MD034",
# "-t", "allow_different_nesting"]
- repo: https://gitee.com/mirrors_codespell-project/codespell.git
rev: v2.1.0
hooks:
- id: codespell
- repo: https://gitee.com/irving512/docformatter.git
rev: v1.3.1
hooks:
- id: docformatter
args: ["--in-place", "--wrap-descriptions", "79"]
# - repo: local
# hooks:
# - id: clang-format
# name: clang-format
# description: Format files with ClangFormat
# entry: clang-format -style=google -i
# language: system
# files: \.(c|cc|cxx|cpp|cu|h|hpp|hxx|cuh|proto)$
参考文档:
https://pre-commit.com