gvm 是 golang 版本管理工具,使用 gvm 就能够在一台电脑上同时安装多个 go 版本,并且只需要通过简单的命令就能够切换使用不同的 go 版本
Install
安装 gvm 的命令如下:
- Install Bison:
arduino
sudo apt-get install bison
- Install gvm:
ruby
bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
如果使用的是 zsh
,可以用zsh
替换命令中的bash
Install golang
gvm
安装成功之后,就可以使用 gvm
安装golang
了,首先使用命令列出可以用gvm
安装的go
版本:
ruby
ubuntu@ubuntu:~$ gvm listall
gvm gos (available)
go1
...
go1.21.3
go1.21.4
go1.21.5
...
然后使用命令开始安装,
gvm install go1.21.1
第一次安装可能会有点慢,因为gvm
是通过golang
源代码编译进行安装的,第一次会下载golang
源代码,所以会有点慢(下载的 golang 源代码在~/.gvm/archive
目录下)。gvm
安装的golang
可以在目录~/.gvm/gos
下看到
安装 完成之后就可以切换到这个版本了,命令如下:
arduino
gvm use go1.21.1 [--default]
使用--default
参数是将该版本设置为系统默认的golang
版本,如果不带--default
参数,则切换的版本只对当前shell
起作用
使用gvm list
命令可以列出当前使用gvm
安装的go
版本:
ruby
ubuntu@ubuntu:~$ gvm list
gvm gos (installed)
go1.18.10
=> go1.19.13
go1.21.8
system
其中箭头指向的就是当前使用的go
版本
环境配置
在使用go use
命令后就会自动设置GOROOT
和GOPATH
,GOROOT
就是当前安装的golang
版本的目录,默认在~/.gvm/gos/go1.19.13
。GOPATH
在~/.gvm/pkgsets/go1.19.13
下面
其他命令
gvm
还提供了一些其他的命令:
卸载
如果之前有自己单独安装的go
,现在就可以卸载了,go
一般是安装在/usr/local/go
中,直接删除这个目录就好了
go
rm -rf /usr/local/go
如果在其他位置还指定了GOPATH,现在也可以直接删除了