git 设置提交前自动动作

创建一个 .pre-commit-config.yaml 文件:

repos:
  - repo: https://github.com/psf/black
    rev: '22.8.0'
    hooks:
      - id: black
        args:
          - --line-length=120
  - repo: https://github.com/pycqa/isort
    rev: '5.12.0'
    hooks:
      - id: isort
        name: isort
        files: "\\.(py)$"
        args:
          - --profile=black
  - repo: https://github.com/PyCQA/flake8
    rev: '3.8.4'
    hooks:
      - id: flake8
        args:
          - --ignore=F403,F405,W504,W503,E203
          - --max-line-length=120
  - repo: https://github.com/pre-commit/pygrep-hooks
    rev: v1.9.0
    hooks:
      - id: python-check-blanket-noqa
  - repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v4.3.0
    hooks:
      - id: trailing-whitespace
      - id: end-of-file-fixer
      - id: check-added-large-files
        args: ['--maxkb=100', --enforce-all]
      - id: check-json
      - id: check-docstring-first
      - id: check-yaml
      - id: debug-statements
      - id: mixed-line-ending
  - repo: https://github.com/PyCQA/pylint/
    rev: v2.17.2
    hooks:
      - id: pylint
        name: pylint
        entry: pylint
        language: system
        types: [python]
        args:
          [
            '--rcfile=.pylintrc',
            '--disable=C0114,C0415,W0212,W0235,W0238,W0621,C0103,R1735,C2801,E0402,C0412,W0719,R1728,W1514,W0718,W0105,W0707,C0209,W0703,W1203',
          ]

安装 pre-commit:

pipx install pre-commit

运行:

pre-commit

参见:pre-commit

posted @ 2025-03-15 07:37  Undefined443  阅读(15)  评论(0)    收藏  举报