go 版本管理工具 gvm

下载地址

安装包下载地址(随便选一个能访问的下载,区别在于命令行中使用gvm,还是g)

win 平台

1.gitee上的gvm:gvm 发行版 - Gitee.com

2.github上的g:Releases · voidint/g · GitHub

上面这个是同一个作者

mac 平台

https://github.com/moovweb/gvm (选这个星星多的更靠谱,别人是源码编译,需要先安装go环境)就是安装的这个

这次是win平台

安装包下载

image-20230410104822083

下载后解压出来只有一个exe文件,把它放在一个单独的目录,我这里是D:\g\g.exe

image-20230410105100144

配置环境变量

下面开始配置环境变量,都以g为演示(gvm操作步骤一样,目录名有变化)。

快捷命令sysdm.cpl打开环境变量配置,增加如下几个【系统变量】:

win + R => sysdm.cpl

image-20230410105650056

# 配置下G_MIRROR,为了下载go的时候不FQ
G_MIRROR=https://golang.google.cn/dl/

G_HOME=C:\Users\(当前登录windows的用户目录)\(g/gvm工作目录)
示例:g -> G_HOME=C:\Users\1\.g
gvm -> G_HOME=C:\Users\1\.gvm


# 配置GOROOT,这个指向g/gvm工作目录下的go
# gvm安装go版本后,会在这个路径下建立一个软链到versions目录下的指定版本
# 靠这个方法来控制当前的go版本,如果安装g/gvm之前已经安装过go了,需要修改GOROOT这个环境变量
GOROOT=%G_HOME%\go

image-20230410110642165

编辑系统变量中的【PATH】变量,增加一行【D:\g\】和一行【%GOROOT%\bin】,如下图

image-20230410110946488

添加【D:\g\】 是为了在命令行工具中,全局使用g/gvm

添加【%GOROOT%\bin】是为了全局使用go命令
如果之前设置过 go 的环境变量,需要先删除

测试

这里比较重要的一步,【以管理员身份运行命令行工具】

不管是CMD、还是powershell,都要以管理员身份运行!!!

不然,会出现【Symlink....A required privilege is not held by the client.】

就是无权创建软链,导致GOROOT指向的go目录不存在。

执行命令

g install 1.11.2

等待一会儿,看到显示Installed successfully,表示安装成功

执行命令验证安装,显示具体go版本表示go安装成功

go version

image-20230410111828914

使用

查询当前可供安装的stable状态的go版本

$ g ls-remote stable
  1.13.15
  1.14.7

安装目标go版本1.14.7

$ g install 1.14.7
Downloading 100% |███████████████| (119/119 MB, 9.939 MB/s) [12s:0s]
Computing checksum with SHA256
Checksums matched
Now using go1.14.7

查询已安装的go版本

$ g ls
  1.7.6
  1.11.13
  1.12.17
  1.13.15
  1.14.6
* 1.14.7

查询可供安装的所有go版本

$ g ls-remote
  1
  1.2.2
  1.3
  1.3.1
  ...    // 省略若干版本
  1.14.5
  1.14.6
* 1.14.7
  1.15rc1

切换到另一个已安装的go版本

$ g use 1.14.6
go version go1.14.6 darwin/amd64

卸载一个已安装的go版本

$ g uninstall 1.14.7
Uninstalled go1.14.7

更新 g 软件本身

$ g update
A new version of g(v1.2.2) is available
Downloading 100% |███████████████| (3.7/3.7 MB, 2.358 MB/s)
Computing checksum with SHA256
Checksums matched
Update completed
posted @ 2023-04-10 11:47  makalo  阅读(407)  评论(0编辑  收藏  举报