簡體   English   中英

如何在 go 模組中升級 go 版本

[英]How to upgrade the go version in a go mod

在 go 模組中升級 go 版本的正確方法是什么,特別是從 1.13 升級到 1.14?
您是否只需編輯 go.mod 文件並將go 1.13更改為go 1.14

我不是在問如何編輯 go.mod 文件,我是在問是否可以簡單地更改 go 中的 go 版本是否合適,其他所有文件的依賴項仍然是。 ?

命令 go:從工具或腳本編輯 go.mod:

用法:

 go mod edit [editing flags] [go.mod]

Edit 提供了一個用於編輯 go.mod 的命令行界面,主要供工具或腳本使用。 它只讀取 go.mod; 它不查找有關模塊的信息。 默認情況下,edit 讀取和寫入主模塊的 go.mod 文件,但可以在編輯標志后指定不同的目標文件。

...

-go=version 標志設置預期的 Go 語言版本。

很簡單:

go mod edit -go=1.14

但是你也可以手動編輯go.mod ,它是一個簡單的文本文件。 go mod edit主要用於腳本,因此對go.mod更改可以輕松自動化。

另一個答案很好,但作為另一種方法,假設你有這個:

module north

go 1.13

您可以刪除go行,然后運行go mod tidy 結果:

module north

go 1.16

https://golang.org/cmd/go#hdr-Add_missing_and_remove_unused_modules

go buildgo test :這些命令檢查 go.mod 並自動下載缺少的依賴項。 所以不,當在 go.mod 中修改版本時,不需要使用go mod tidy 在某些情況下(主要是 CI),您希望在構建(或測試)需要之前使用go mod download下載緩存中的模塊。

這里提供的答案對我幫助很大。 但是,特別是對於 Windows 用戶,可能需要進行一些調整。

我在命令提示符下使用:

go mod edit -go 1.17

並不是:

go mod edit -go=1.17

請注意省略 ''=" 符號。

這就是我的做法

go mod edit -go 1.18
go mod tidy

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM