【发布时间】:2017-01-21 08:01:32
【问题描述】:
我想将go build 添加到预提交钩子中,以免发布无法构建的代码。
如果构建成功,我想继续提交,否则失败并拒绝提交。
我该如何正确操作?
【问题讨论】:
我想将go build 添加到预提交钩子中,以免发布无法构建的代码。
如果构建成功,我想继续提交,否则失败并拒绝提交。
我该如何正确操作?
【问题讨论】:
任何pre-commit 挂钩都将由 git bash 执行(即使在 Windows 上),因此您可以通过常规 bash 脚本编写它。
从这个钩子中退出非零值会中止提交,尽管您可以使用
git commit --no-verify绕过它。
#!/bin/bash
set -e
go build
(来自“Checking Bash exit status of several commands efficiently”)
这样,您可以链接多个命令(如go vet,其他go linters)。如果其中任何一个失败,pre-commit 钩子将阻止提交。
【讨论】: