如果检测到匹配的文件,请运行 pre-commit.com 挂钩一次(不是针对每个文件)



我有一个钩子,可以从源文件生成文档文件,使用 pre-commit.com 框架构建。在该挂钩中调用的函数没有 file 参数,因此它只是为目录中的所有源文件创建文档。钩子是一个system钩子,即只是一个 bash 脚本,我在其中调用该函数来创建文档。但是,在 pre-commit.com 框架中,文件被传递给钩子,逻辑是在每个文件上执行一个钩子,这在大多数情况下是有意义的(例如,单独检查每个文件(。所以我的问题是:如果有任何源文件发生更改,我如何确保文档钩子运行一次,而不是在单个文件上多次(并行或顺序(运行?具体来说,我的钩子正在用roxygen2::roxygenize()生成R文档,可以在这里找到。

预提交框架支持pass_filenames: false

文档也许可以在这里改进,但这就是他们必须说的

pass_filenames -(可选:默认true (如果true此钩子必须将文件名作为位置参数。0.14.0 中的新功能

嗯,是的,也许不是最好的描述 - 但如果false pre-commit只会调用一次你的命令并且不会传递任何文件名

最新更新