在Golang中,build过程主要由go build执行。它完成了源码的编译与可执行文件的生成。本文介绍如何在build过程中将git版本信息注入到程序中。
在编写go项目的Makefile时,看到可以通过链接选项来传入信息.
1 | GITHASH := $(shell git rev-parse --short HEAD) |
通过-X importpath.name=value
方式可以将在包路径为importpath
中,名为name
的字符串变量设置成值value
. 但这当变量在源代码中未被初始化或者初始化为一个字符串字面量时才有效.
1 | package main |
参考文献: