1 回答

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超7個(gè)贊
我可以將所有這些留在一個(gè)用于生成多個(gè)可執(zhí)行文件的 git 存儲(chǔ)庫中嗎?
是的。
如果是,哪個(gè)子文件夾需要包含 go.mod 文件?
正如@Peter 指出的那樣 - 只有您需要版本的那些。
只是go mod init如果您不確定 - 如果生成的路徑不正確,請(qǐng)?zhí)峁┠K路徑。
獎(jiǎng)勵(lì)建議,如果您正在對(duì)該目錄進(jìn)行版本控制,請(qǐng)通過 git 標(biāo)簽標(biāo)記您的個(gè)人目錄。您可以對(duì)包(非主)目錄或可執(zhí)行(主)包執(zhí)行此操作。
如果需要,這將允許用戶安裝特定版本的可執(zhí)行文件。
可執(zhí)行文件的 git 標(biāo)簽示例:
progOne/v0.1.0
progTwo/v0.2.5
progThree/v0.3.4
用戶可以像這樣安裝特定版本:
go install github.com/me/myrepo/progOne@v0.1.0
或用于@latest獲取最新版本。
如果包需要特定版本的依賴包,請(qǐng)像這樣標(biāo)記它們:
common/net/v0.1.2
common/colors/v0.3.5
common/resources/v0.5.9
對(duì)于依賴于這些的每個(gè)可執(zhí)行文件,您將go get使用所需的版本執(zhí)行一個(gè)(這將依次更新go.mod)
正如您從上面看到的那樣,標(biāo)簽應(yīng)該與目錄名稱匹配 - 然后以SemVer 結(jié)尾。
有關(guān)模塊標(biāo)記的信息,請(qǐng)參閱官方博客文章Publishing Go Modules
- 1 回答
- 0 關(guān)注
- 93 瀏覽
添加回答
舉報(bào)