Go 语言版本管理器(GVM)是管理 Go 语言环境的开源工具。GVM 「pkgsets」 支持安装多个版本的 Go 并管理每个项目的模块。它最初由 Josh Bussdieker 开发,GVM 与 Ruby RVM 类似,允许你为每个项目或一组项目创建一个开发环境,分离不同的 Go 版本和包依赖关系,来提供更大的灵活性,以防不同版本造成的问题。GVM 主要有以下几个特性:
管理 Go 的多个版本,包括安装、卸载和指定使用 Go 的某个版本
查看官方所有可用的 Go 版本,同时可以查看本地已安装和默认使用的 Go 版本
管理多个 GOPATH,并可编辑 Go 的环境变量
可将当前目录关联到 GOPATH
可以查看 GOROOT 下的文件差异
支持 Go 版本切换
项目地址:https://github.com/moovweb/gvm
自动安装执行脚本
bash < <(curl -s -S -L [<u>https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)</u>](https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer))
手动安装脚本(指定目录)
wget https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer
GVM_DEST=${2:-$HOME}
[ "$GVM_DEST" = "$HOME" ] && GVM_NAME="develop/gvm"
通过设置GVM_DEST 和 GVM_NAMe来制定目录 GVM_DEST默认是/home/zhaiyujin 当前用户文件 GVM_NAME是安装目录
./gvm-installer开始安装
配置gvm的环境变量(上面安装是自动添加.bashrc)
# go 版本切换工具gvm
[[ -s "/opt/gvm/scripts/gvm" ]] && source "/opt/gvm/scripts/gvm"
GVM的使用
1.列出当前已安装的 Go 版本
# gvm list
gvm gos (installed)
go1.10.8
go1.12.6
system
2.列出当前可以安装的 Go 版本
# gvm listall
3.安装指定版本的 Go
# gvm install go1.12.10
4.切换到指定的 Go 版本
临时切换:gvm use go1.12.6
切换指定一个默认版本:gvm use go1.12.6 --default
切换后查看版本/环境变量:
# go version
go version go1.12.6 linux/amd64