git - 如何正确获取 go build 的返回码?

标签 git go hook

我想将 go build 添加到预提交 Hook 中,以免发布无法构建的代码。

如果构建成功,我想继续提交,否则失败并拒绝提交。

我该如何正确地做到这一点?

最佳答案

任何 pre-commit Hook 都将由 git bash 执行(即使在 Windows 上),因此您可以通过常规 bash 脚本编写脚本。

参见 Git Hooks

Exiting non-zero from this hook aborts the commit, although you can bypass it with git commit --no-verify.

#!/bin/bash
set -e
go build

(来自“Checking Bash exit status of several commands efficiently”)
这样,您可以链接多个命令(如 go vet ,其他 go linters )。如果其中任何一个失败,pre-commit Hook 将阻止提交。

关于git - 如何正确获取 go build 的返回码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41777068/

相关文章:

git - 为什么 git format-patch 生成的补丁早于修订范围的时间戳

java - 如何使用 Git 存储库作为爆炸 war ?

git - 如何列出所有的 Git 标签?

go - 使用 mgo 错误插入 ISODate 字段

c++ - 原始输入替代键盘 Hook ?

java - liferay钩子(Hook)部署-事件类未找到异常

git - 从 MSBuild 获取 Git Long Hash

struct - 在已经类型化的结构上进行 Go 结构类型

go - 我的错误是什么?

SVN 钩子(Hook)不起作用