Python项目pre-commit hook

Python项目pre-commit hook,第1张

首先 pre-commit 做不到什么 并不能提高你的代码质量 也不能提高你的逻辑思维能力 pre-commit 能做什么 帮助你格式化代码 减少再代码格式上的信仰冲突 节省更多的时间,讨论逻辑…

pre-commit优缺点

缺点

  • 并不能提高你的代码质量
  • 也不能提高你的逻辑思维能力

优点

  • 帮助你格式化代码
  • 减少再代码格式上的信仰冲突
  • 节省更多的时间,讨论逻辑,优化算法。


安装
pip install pre-commit

pip freeze | grep pre-commit >> requiremests.txt 
配置 pre-commit

在你的项目目录下创建一个 .pre-commit-config.yaml 文件

repos:
-   repo: https://github.com/ambv/black
    rev: stable
    hooks:
    - id: black
      language_version: python3.7
-   repo: https://gitlab.com/pycqa/flake8
    rev: 3.7.9
    hooks:
    - id: flake8


添加以上配置在 .pre-commit-config.yaml 中

这里使用了 black 和 flake8 格式化你的代码,当然还有其他很多插件。


> 比如: isort

配置 black

在你的项目下, 创建 pyproject.toml 文件

[tool.black]
line-length = 79
include = '\.pyi?$'
exclude = '''
/(
    \.git
  | \.hg
  | \.mypy_cache
  | \.tox
  | \.venv
  | _build
  | __pycache__
  | build
  | dist
)/
'''


配置 flake8

在你的项目下, 创建 .flake8 文件

[flake8]
ignore = E203, E231, E266, E501, W503, F403, F405, F401
exclude =
		.git,
		__pycache__,
		build,
		dist
max-line-length = 79
max-complexity = 18
select = B,C,E,F,W,T4,B9


安装 git-commit-hook
pre-commit install 
运行 pre-commit
pre-commit run -a 

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/579552.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-11
下一篇 2022-04-11

发表评论

登录后才能评论

评论列表(0条)

保存