golang多版本管理工具
前言
以往我安装
go
环境都是去网站上下载对应文件,然后本地解压。
每次发布新版本都要搞一次,太麻烦了,所以想找找多版本管理工具。
找到一个操作非常简单又能完全满足我的要求的库https://github.com/voidint/g。
美中不足的是在window
下安装和切换时使用软连接需要管理员权限。
为此我找到了一个方案并fork然后修改了一下,我的项目地址:https://github.com/jan-bar/g
安装和使用
执行
go install github.com/jan-bar/g@v1.2.2
安装该工具。
window下也可以不用管理员权限打开cmd去执行命令,方便了不少。
需要安装go到指定目录,则可以按照下面的方式去配置环境变量。
window下配置如下环境变量,安装或切换时cmd要用管理有权限打开
G_EXPERIMENTAL=true
G_HOME=D:\go\install\g
G_MIRROR=https://golang.google.cn/dl/
GOPATH=D:\go\project
GOROOT=%G_HOME%\go
PATH=%GOROOT%\bin;%GOPATH%\bin
Linux下的配置
export G_EXPERIMENTAL=true
export G_HOME=/root/go/g
export G_MIRROR=https://golang.google.cn/dl/
export GOPATH=/root/go/project
export GOROOT=$G_HOME/go
export PATH=$GOROOT/bin:$GOPATH/bin:$PATH
go本身的环境变量配置
go env -w "GOPROXY=https://goproxy.cn,direct"
go env -w "GO111MODULE=on"
工具的使用方法如下,可以都敲一遍就熟悉了。
g ls 查看本地已安装的版本
g ls-remote stable 查询当前可供安装stable的版本
g install 1.16.7 安装指定版本
g ls-remote 查询可供安装的所有版本
g use 1.16.3 切换指定版本
g uninstall 1.14.7 卸载已安装的版本
g clean 清理下载文件