我正在分發一個需要大量生成文件的 go 包,我不想將這些文件包含在master我的 git 存儲庫的分支中。我希望人們能夠使用go get. 由于go get不運行go generate,我的解決方案是將所有生成的文件粘貼在一個go1分支中,該分支超出一次提交master但還包括所有生成的文件。我還可以向分支添加第二個假父提交go1,這樣無論人們獲取什么,go1它總是一個快進合并。go1只要保持原始狀態,我不在乎分支變得多么丑陋master。這種技術在第一次使用時效果很好。不幸的是,即使分支根本沒有改變go get -u,對人們的每次后續調用都會失敗,因為將簽出的存儲庫留在分離的 HEAD 狀態而不是在分支上。我可以通過手動深入我的 gopath 運行來自己解決這個問題,這將創建一個本地分支跟蹤,但是必須指示其他人這樣做非常煩人。在這一點上,我最好只與 gopath 系統作斗爭并告訴人們使用 Makefile 構建軟件。go1go getgo1git checkout go1go1origin/go1關于如何解決這個問題或告訴人們什么的任何想法?我真正不想做的一件事是在服務器上運行git symbolic-ref更改,因為確實需要成為所有開發人員的默認分支。無論如何,不需要在服務器上進行更改,因為選擇獲取分支的是服務器,那么為什么不創建一個從中提取的本地分支呢?HEADmasterHEADgo getgo1go1origin/go1
go get -u 對帶有 go1 分支的包失敗
12345678_0001
2023-03-29 17:14:09
