Pre-commit Hooks 使用教程
1. 项目的目录结构及介绍
Pre-commit-hooks/
├── .github/
│ └── workflows/
│ └── pre_commit_hooks.yaml
├── .gitignore
├── CHANGELOG.md
├── LICENSE
├── README.md
├── pre-commit-config.yaml
├── pre-commit-hooks.yaml
├── requirements-dev.txt
├── setup.cfg
├── setup.py
└── tox.ini
- .github/workflows/: 包含GitHub Actions的工作流配置文件。
- .gitignore: 指定Git忽略的文件和目录。
- CHANGELOG.md: 记录项目的变更日志。
- LICENSE: 项目的许可证文件。
- README.md: 项目的主要说明文档。
- pre-commit-config.yaml: pre-commit工具的配置文件。
- pre-commit-hooks.yaml: 自定义钩子的配置文件。
- requirements-dev.txt: 开发依赖的Python包列表。
- setup.cfg: 项目的配置文件。
- setup.py: Python项目的安装脚本。
- tox.ini: 用于自动化测试的配置文件。
2. 项目的启动文件介绍
项目的启动文件主要是setup.py
,它是一个标准的Python安装脚本,用于安装项目的依赖和打包项目。
from setuptools import setup, find_packages
setup(
name='pre-commit-hooks',
version='0.1.0',
packages=find_packages(),
install_requires=[
# 依赖列表
],
entry_points={
'console_scripts': [
'pre-commit-hooks=pre_commit_hooks:main',
],
},
)
3. 项目的配置文件介绍
pre-commit-config.yaml
pre-commit-config.yaml
是 pre-commit 工具的配置文件,用于定义在代码提交前需要执行的钩子。
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.6.0
hooks:
- id: trailing-whitespace
- id: check-added-large-files
args: ['--maxkb=123']
- id: check-ast
- id: check-builtin-literals
pre-commit-hooks.yaml
pre-commit-hooks.yaml
是自定义钩子的配置文件,用于定义具体的钩子行为。
- id: trailing-whitespace
name: Trim Trailing Whitespace
description: This hook trims trailing whitespace.
entry: trailing-whitespace-fixer
language: python
types: [text]
以上是 Pre-commit Hooks 项目的基本使用教程,包括项目的目录结构、启动文件和配置文件的介绍。希望对你有所帮助!