2

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

4

1 回答 1

6

预提交框架支持pass_filenames: false

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

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

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

于 2019-07-27T14:43:41.843 回答