1 回答

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超8個(gè)贊
該行為已明確記錄:
模式不得與包模塊外部的文件(如 符號鏈接)匹配。空目錄的匹配項(xiàng)將被忽略。之后,行中的每個(gè)模式必須至少匹配一個(gè)文件或非空目錄。.git/*//go:embed
將提交 ID 放入代碼中的更好方法是將其包含在命令行中,例如此處所述。如果您的代碼如下所示:go build
package main
import "fmt"
var (
head string = "development"
)
func main() {
fmt.Println(head)
}
你像這樣構(gòu)建你的二進(jìn)制文件:
go build -ldflags "-X main.head=$(git rev-parse HEAD)"
然后運(yùn)行代碼將打印生成代碼時(shí)的 HEAD 提交 ID。
在 中自動(dòng)執(zhí)行此類操作是很常見的,如下所示:Makefile
COMMITID = $(shell git rev-parse HEAD)
GOLDFLAGS = -X 'main.head=$(COMMITID)'
all: example
example: main.go
go build -ldflags "$(GOLDFLAGS)"
clean:
rm -f example
然后,您只需鍵入以使用正確的命令行標(biāo)志構(gòu)建二進(jìn)制文件。make
- 1 回答
- 0 關(guān)注
- 137 瀏覽
添加回答
舉報(bào)