Golang使用gvm進(jìn)行版本控制的安裝使用教程
引言
當(dāng)你想為每個(gè)項(xiàng)目切換 go 版本時(shí),gvm (Go Version Manager) 很方便。
這里,我將介紹“如何在Mac上安裝gvm”和“如何使用gvm”
使用準(zhǔn)備
僅適用于 Mac 的準(zhǔn)備工作
按照MacOSX 要求中的說明執(zhí)行以下命令。
xcode-select --install brew update brew install mercurial
gvm安裝
我使用 zsh 作為我的 shell。
$ echo $SHELL /bin/zsh
對(duì)于 zsh,您可以這樣安裝:
$ zsh < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer) Cloning from https://github.com/moovweb/gvm.git to /Users/user_name/.gvm No existing Go versions detected Installed GVM v1.0.22 Please restart your terminal session or to get started right away run `source /Users/user_name/.gvm/scripts/gvm`
~/.zshrc 以下行被添加到最后一行
[[ -s "/Users/user_name/.gvm/scripts/gvm" ]] && source "/Users/user_name/.gvm/scripts/gvm"
重新啟動(dòng)終端 gvm 即可使用
$ gvm help Usage: gvm [command] Description: GVM is the Go Version Manager Commands: version - print the gvm version number get - gets the latest code (for debugging) use - select a go version to use (--default to set permanently) diff - view changes to Go root help - display this usage text implode - completely remove gvm install - install go versions uninstall - uninstall go versions cross - install go cross compilers linkthis - link this directory into GOPATH list - list installed go versions listall - list available versions alias - manage go version aliases pkgset - manage go packages sets pkgenv - edit the environment for a package set
如何使用gvm
查看可以安裝的版本
gvm listall 您可以檢查可以安裝哪個(gè)版本
$ gvm listall gvm gos (available) go1 go1.0.1 go1.0.2 go1.0.3 go1.1 go1.1rc2 go1.1rc3 :
安裝 go 版本
M1 Mac 我正在使用,但是當(dāng)我執(zhí)行以下命令時(shí),出現(xiàn)錯(cuò)誤
$ gvm install go1.16.15 -B Installing go1.16.15 from binary source ERROR: Binary Go unavailable for this platform $ $ gvm install go1.17.5 -B Installing go1.17.5 from binary source ERROR: Binary Go unavailable for this platform
我在以下方面取得了成功:
$ brew install go
==> Downloading https://ghcr.io/v2/homebrew/core/go/manifests/1.18
######################################################################## 100.0%
:
$
$ gvm install go1.16.15
Installing go1.16.15...
* Compiling...
go1.16.15 successfully installed!
$
$ gvm use go1.16.15 --default
Now using version go1.16.15
$
$ go version
go version go1.16.15 darwin/arm64之后,即使我卸載了用brew安裝的go,我也能夠安裝另一個(gè)版本的go。
$ brew uninstall go Uninstalling /opt/homebrew/Cellar/go/1.18... (11,947 files, 595.3MB) $ $ gvm install go1.17.5 Installing go1.17.5... * Compiling... go1.17.5 successfully installed!
1.16.15 已安裝 1.17.5 ,但為每個(gè)版本生成了一個(gè)文件夾,如下所示。
$ ls ~/.gvm/gos go1.16.15 go1.17.5
切換go版本來使用
我目前正在go1.16.15 使用
$ gvm list gvm gos (installed) => go1.16.15 go1.17.5 $ $ echo $GOPATH /Users/user_name/.gvm/pkgsets/go1.16.15/global $ $ echo $GOROOT /Users/user_name/.gvm/gos/go1.16.15 $ $ go version go version go1.16.15 darwin/arm64 $ $ which go /Users/user_name/.gvm/gos/go1.16.15/bin/go
1.17.5 我會(huì)嘗試切換到
$ gvm use go1.17.5 --default Now using version go1.17.5 $ $ gvm list gvm gos (installed) go1.16.15 => go1.17.5 $ $ echo $GOPATH /Users/user_name/.gvm/pkgsets/go1.17.5/global $ $ echo $GOROOT /Users/user_name/.gvm/gos/go1.17.5 $ $ go version go version go1.17.5 darwin/arm64 $ $ which go /Users/user_name/.gvm/gos/go1.17.5/bin/go
參考 https://github.com/moovweb/gvm
以上就是Golang使用gvm進(jìn)行版本控制的安裝使用教程的詳細(xì)內(nèi)容,更多關(guān)于Golang gvm版本控制的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Go并發(fā)編程結(jié)構(gòu)體多字段原子操作示例詳解
這篇文章主要為大家介紹了Go并發(fā)編程結(jié)構(gòu)體多字段原子操作示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12
Golang 實(shí)現(xiàn)簡(jiǎn)單隨機(jī)負(fù)載均衡
均衡算法又分為 隨機(jī),輪詢,加權(quán)輪詢,哈希,而隨機(jī)負(fù)載均衡算法就是本文的重點(diǎn),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-06-06
VSCode安裝go相關(guān)插件失敗的簡(jiǎn)單解決方案
這篇文章主要給大家介紹了關(guān)于VSCode安裝go相關(guān)插件失敗的簡(jiǎn)單解決方案,VSCode是我們開發(fā)go程序的常用工具,最近安裝的時(shí)候遇到了些問題,需要的朋友可以參考下2023-07-07
詳解Golang中interface{}的注意事項(xiàng)
學(xué)習(xí)?golang?,對(duì)于?interface{}?接口類型,我們一定繞不過,這篇文章咱們就來一起來看看?使用?interface{}?的時(shí)候,都有哪些注意事項(xiàng)吧2023-03-03
GO的基礎(chǔ)知識(shí)掃盲注意事項(xiàng)
這篇文章主要介紹了GO的基礎(chǔ)知識(shí)注意事項(xiàng),本文是GO語言小白的掃盲文,主要講解了go語言的基本知識(shí),GO程序目錄結(jié)構(gòu),GO程序包的導(dǎo)入與別名運(yùn)用,GO內(nèi)置關(guān)鍵字,GO注釋方法需要的朋友可以參考下2022-12-12

