使用GVM管理多版本Golang环境

Go 语言版本管理器(Gvm)是管理 Go 语言环境的开源工具。Gvm 「pkgsets」 支持安装多个版本的 Go 并管理每个项目的模块。它最初由 Josh Bussdieker 开发,GvmRuby RVM 类似,允许你为每个项目或一组项目创建一个开发环境,分离不同的 Go 版本和包依赖关系,来提供更大的灵活性,以防不同版本造成的问题。Gvm 主要有以下几个特性:

安装依赖

apt-get install bison

安装GVM

[root@vps3019237 caddy]# bash < <(curl -sSL https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
Cloning from https://github.com/moovweb/gvm.git to /root/.gvm
Created profile for existing install of Go at '/usr/lib/golang'
Installed GVM v1.0.22

Please restart your terminal session or to get started right away run
 `source /root/.gvm/scripts/gvm`

[root@vps3019237 caddy]# source /root/.gvm/scripts/gvm
[root@vps3019237 caddy]# gvm version
Go Version Manager v1.0.22 installed at /root/.gvm

常用命令

# 查看当前机器的Go环境
gvm  list

# 查看所有可安装的Go版本
gvm listall

# 安装Go
gvm install go1.14

# 切换Go版本
gvm use go1.14

# 查看Go版本
go version

使用pkgset

# 自定义新的pkgset比如goGraces
gvm pkgset create goGraces

# 应用goGraces
gvm pkgset use goGraces

# 查看
gvm pkgset list
echo $GOPATH

# 安装mux包,此时它被安装到goGraces 的pkgset下面
go get github.com/gorilla/mux