釋出模組

當您想讓其他開發者使用您的模組時,您需要釋出它,使其對 Go 工具可見。模組釋出後,匯入其包的開發者將能夠透過執行 go get 等命令來解析對該模組的依賴。

注意: 釋出模組後,請勿更改已標記的版本。對於使用該模組的開發者,Go 工具會根據首次下載的副本對下載的模組進行驗證。如果兩者不同,Go 工具將返回安全錯誤。請勿更改已釋出版本的程式碼,而是釋出新版本。

另請參閱

釋出步驟

使用以下步驟釋出模組。

  1. 開啟命令提示符,並將當前目錄更改為本地倉庫中模組的根目錄。

  2. 執行 go mod tidy,這會刪除模組可能已累積但不再需要的任何依賴項。

    $ go mod tidy
    
  3. 最後一次執行 go test ./... 以確保一切正常。

    這將執行您編寫的用於 Go 測試框架的單元測試。

    $ go test ./...
    ok      example.com/mymodule       0.015s
    
  4. 使用 git tag 命令為專案標記新版本號。

    對於版本號,請使用一個向用戶表明此版本中更改性質的數字。有關更多資訊,請參閱模組版本編號

    $ git commit -m "mymodule: changes for v0.1.0"
    $ git tag v0.1.0
    
  5. 將新標籤推送到原始倉庫。

    $ git push origin v0.1.0
    
  6. 透過執行go list 命令使模組可用,以提示 Go 使用您正在釋出的模組的資訊更新其模組索引。

    在命令之前加上一條語句,將 GOPROXY 環境變數設定為 Go 代理。這將確保您的請求到達代理。

    $ GOPROXY=proxy.golang.org go list -m example.com/mymodule@v0.1.0
    

對您的模組感興趣的開發者會從其中匯入一個包,然後執行go get 命令,就像他們使用任何其他模組一樣。他們可以執行go get 命令獲取最新版本,也可以指定特定版本,如下例所示

$ go get example.com/mymodule@v0.1.0