【发布时间】:2020-10-18 00:28:41
【问题描述】:
如何在将代码签入 GitHub 之前使用预提交挂钩删除 Python 项目中的打印语句?目前,我使用 black 和 flake8 预提交钩子。但是他们似乎没有在签入代码之前检查和删除打印语句的选项。
【问题讨论】:
标签: python git pre-commit-hook pre-commit.com
如何在将代码签入 GitHub 之前使用预提交挂钩删除 Python 项目中的打印语句?目前,我使用 black 和 flake8 预提交钩子。但是他们似乎没有在签入代码之前检查和删除打印语句的选项。
【问题讨论】:
标签: python git pre-commit-hook pre-commit.com
由于pre-commit framework 只调用flake8,您需要检查its configuration 以查看是否有任何设置会触发打印语句删除(而不是error/violation codes)
由于 flake8 本身不支持该功能,您需要开发一个 plugin to flake8 才能对这些错误采取行动并删除打印行。
如果这样做,请不要忘记添加更改,如“Can you change a file content during git commit?”中所述
【讨论】:
您可以使用 flake8 插件来检查打印语句。
https://pypi.org/project/flake8-print/
只需添加到您的预提交配置中:
- repo: https://gitlab.com/pycqa/flake8
rev: <desired-rev>
hooks:
- id: flake8
additional_dependencies: [flake8-print]
【讨论】: