七叶笔记 » golang编程 » golang 构建时写版本号和编译时间

golang 构建时写版本号和编译时间

项目用git管理源代码,版本号用git 的tag功能。

先看构建命令

 # 默认使用goproxy.cn
export GOPROXY=
export GONOSUMDB=*
export GO111MODULE=on

go env

go version

# input your command here

go build   -ldflags "-X 'gitee.com/leobbs/leobbs/pkg/version.BuildTag=$(git describe --tags)' -X 'gitee.com/leobbs/leobbs/pkg/version.BuildNum=$(date  '+%Y%m%d%H%M%S')'" --tags json1 -v 
  

在项目的pkg/version.go里面,定义了两个变量

 package version

var BuildTag string
var BuildNum string  

在其它需要打印的地方,引入version包,就可以直接用了

编译的时候,会把value 注入进去

结果示例

编译时间和版本号都显示出来了

相关文章