minimum_pre_commit_version: 4.0.0
exclude: ^LICENSES/|\.(html|csv|svg|md|markdown)$ # <-- 这里加了 md 后缀
default_stages: [pre-commit]
ci:
autofix_prs: false
autoupdate_schedule: monthly
repos:
# pre-commit 基础检查
- repo: https://gitcode.com/pre-commit/pre-commit-hooks
rev: v4.6.0
hooks:
- id: trailing-whitespace
exclude: \.md$
- id: end-of-file-fixer
exclude: \.md$
- id: check-yaml
args: ["--allow-multiple-documents"]
- id: check-added-large-files
- id: check-merge-conflict
exclude: \.md$
- id: detect-private-key
- id: check-json
# -------------------------- Python 核心检查 --------------------------
# Ruff:指定读取 pre-commit/pyproject.toml
# - repo: https://gitcode.com/gh_mirrors/ru/ruff-pre-commit
# rev: v0.14.14
# hooks:
# - id: ruff-check
# args: ["--config", "pre-commit/pyproject.toml", "--output-format", "github", "--fix"]
# types: [python]
# - id: ruff-format
# args: ["--config", "pre-commit/pyproject.toml"]
# types: [python]
# codespell
- repo: https://gitcode.com/gh_mirrors/co/codespell
rev: v2.4.1
hooks:
- id: codespell
exclude: \.md$ # <-- 跳过 md
args: [
"-L",
"CANN,cann,NNAL,nnal,ASCEND,ascend,EnQue,CopyIn,ArchType,AND,ND,tbe,copyin,alog,nd,inH,maximun",
"--skip",
"*.toml,*.py,*.cpp,*.hpp,*.c,*.h",
]
# pylint:指定 pre-commit/pyproject.toml
# - repo: https://gitcode.com/gh_mirrors/pyl/pylint
# rev: v4.0.5
# hooks:
# - id: pylint
# name: pylint (Python code quality check)
# types: [python]
# args: ["--rcfile=pre-commit/pyproject.toml"]
# verbose: false
# Bandit:指定 pre-commit/pyproject.toml
- repo: https://gitcode.com/gh_mirrors/ba/bandit
rev: 1.9.4
hooks:
- id: bandit
name: bandit (Python 安全漏洞检查)
types: [python]
args: [
"--config=pre-commit/pyproject.toml",
"--quiet",
]
# typos
- repo: https://gitcode.com/gh_mirrors/ty/typos
rev: v1.32.0
hooks:
- id: typos
exclude: \.md$ # <-- 跳过 md
args: ["--force-exclude", "--config", "pre-commit/typos.toml"]
#--------------- C++ 核心检查 ---------------------------------------------
# - repo: https://gitcode.com/pre-commit-cl/mirrors-clang-format
# rev: v18.1.8
# hooks:
# - id: clang-format
# files: \.(c|h|cpp|hpp|cc|hh|cxx|hxx)$
# args:
# - "--style=file" # 读取 .clang-format 文件
# - "--verbose"
# - "-i"