在我的预提交配置文件中,我有:
- repo: https://github.com/psf/black
rev: 19.3b0
hooks:
- id: black
我希望发生的是Black只修改暂存文件,提交成功。因为Black的整个重点在于自动强制执行Python代码风格规则,不需要询问。
实际上发生的是:当我暂存一个(非符合Black规范的)文件并尝试提交时,Black会修改该文件以使其符合规范,这正是预期的...但问题是它返回了“失败”。所以提交失败了。然后我必须取消暂存文件,再次暂存,才能再次提交...只有这样才能提交成功。
这是一个巨大的烦恼,不可能是预期的工作流程?
我做错了什么?
git add
设置为在暂存之前运行black来实现;这样可以将预提交钩子作为有效性检查而非格式化工具。 - David258