【问题标题】:pre-commit run yapf --all-files not finding all files?预提交运行 yapf --all-files 找不到所有文件?
【发布时间】:2020-11-10 14:33:19
【问题描述】:

运行:RH7、Python 3.8.3、预提交 2.8.2

我从 github 下载了一个 repo。我对现有文件进行了“错误”更改,例如在 class 语句之前没有足够的空行。我跑

预提交运行 yapf --all-files

我按预期失败了。

但是,如果我创建一个新的文件,同样的错误,没有发现错误!就好像没有看到新文件一样。

请指教。

【问题讨论】:

  • 你能显示你的 .pre-commit-config.yaml 文件吗?您创建的新文件的名称是什么?或者至少,它的扩展名是什么?

标签: git pre-commit pre-commit.com


【解决方案1】:

pre-commit 仅在签入到存储库的文件上运行

这使得您通常不需要许多其他工具所需的排除规则(排除 virtualenvs、.tox、.git、其他垃圾文件等)

它还允许 pre-commit 在提交时做一些聪明的事情,例如只将更改的文件发送到底层工具

尝试git add thatfile.py,然后运行pre-commit run yapf(和/或--all-files


免责声明:我是 pre-commit 的作者

【讨论】:

  • 为了增加兴奋,我使用 eclipse 和一些命令行工具。 eclipse下新文件unstaged时,pre-commit找不到。但是在eclipse下stage的时候,是通过pre-commit发现的。因此,与之前提交的(旧)文件不同,新文件的新更改挂起,似乎对于新文件,git add 直到文件从 unstaged 移动到 staged 时才完成。谢谢!
猜你喜欢
  • 2022-09-28
  • 2021-09-17
  • 2021-09-19
  • 2022-07-02
  • 2017-05-14
  • 2021-07-13
  • 2021-05-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多