1 回答
TA贡献1836条经验 获得超5个赞
没有直接给出那个钩子,但是那个 repo 并没有真正添加太多,你可以通过一个repo: local钩子(未经测试)复制你想要的东西:
- repo: local
hooks:
- id: go-unit-tests
name: go unit tests
entry: go test -p=1 ./...
pass_filenames: false
types: [go]
language: system
免责声明:我写了预提交
/公然的自我推销
我邀请你看看我的 golang pre-commit hooks 项目:
该项目包括用于“go test”的内置挂钩:
这些钩子专门设计用于使您能够将额外的参数传递给 go 工具。
只需使用预提交的内置 args 机制:
此外,每个钩子都有一个针对不同范围运行的版本:
单独修改的 .go 文件
存储库中的所有 .go 文件
包含修改后的 .go|go.mod 文件的完整模块
存储库中的所有模块
包含修改后的 .go 文件的完整包(已弃用)
存储库中的所有包(已弃用)
注意:可用范围取决于每个工具实际支持的内容。
最后,有一种机制可以调用(还)没有内置钩子的通用 go 工具(很难跟上它们)。
根据您最初的问题,这里有一个运行 go test 的示例-p=1
:
- repo: https://github.com/tekwizely/pre-commit-golang rev: master hooks: - id: go-test-mod args: ['-p=1']
我希望你能尝试一下我的项目。我认为您会发现它为 golang 提供了最好的可用预提交挂钩。
(随意提出任何澄清问题,但请不要在这里寻求太多支持 - 项目页面上的问题和讨论跟踪器是处理此类问题的更好地方)
- 1 回答
- 0 关注
- 103 浏览
添加回答
举报