golang轻量级版本管理工具g安装使用

使用 g 可以在 Windows/Linux/macOS 上切换使用不同版本的 golang

GitHub仓库地址

https://github.com/voidint/g

GitHub下载连接

https://github.com/voidint/g/releases

Windows安装

windows直接推荐手动安装,不喜欢用PowerShell,windows安装出现问题处理起来很麻烦,推荐手动安装一步到位。

1、手动安装

注意:强烈推荐先删除已经安装的golang版本后再安装使用版本管理工具g

删除方法:Windows设置 > 应用 > golang

提示:最好选择最新版本,可以体验最新功能

1.进入下载链接后下载后缀为.windows-amd64.zip的最新版本压缩包

2.创建自定义目录(这里的目录可以自行设置,只要配置的环境变量和这个是统一的即可):D:\g

3.配置环境变量

Win11位置:系统 > 系统信息 > 高级系统设置 > 环境变量(N)… > 系统变量(S)

其他windows版本可百度查找

注意:此处指的是在系统变量里面新建变量和值;系统变量里面的Path变量添加值;配置好之后一定要点击确定关闭窗口。

#系统变量
#设置镜像,国内无法自由访问官网,为确保使用现在安装go流程,设置国内镜像点
变量:G_MIRROR
值:https://golang.google.cn/dl/
 
#设置g的工作目录(go的下载安装目录),这里配置为 g.exe 根目录
变量:G_HOME
值(这里是和上面自定义目录一致的):D:\g
 
#配置GOROOT,这个指向g工作目录下的go,g安装go版本后,会在这个路径下软链接到versions目录下的指定版本,用来控制当前的go版本,如果安装g之前已经安装过go了,需要修改GOROOT这个环境变量。
变量:GOROOT
值:%G_HOME%\go
 
#开启所有的实验特性,配置支持自定义安装目录,不开启默认下载的go默认会安装到C:\Users\你的用户名\.g 目录下(及 G_HOME 会自动设置为默认目录下,设置的G_HOME会无效)
变量:G_EXPERIMENTAL
值:true
 
#配置GOBIN
变量:GOBIN
值:%GOROOT%\bin
 
#变量Path的值添加
#设置 g.exe 目录(及 g.exe 文件所在目录),这样就可以使用命令行随时访问
值(这里是和上面自定义目录一致的):D:\g
 
#配置 golang 执行文件目录
值:%GOBIN%

4.测试

cmd终端输入:g env 或者g -v可查看环境变量配置或版本信息

查询到相关信息即安装成功

注意1:如果在终端工具中输入go version不显示版本,那可能是GOBIN环境变量没生效,你需要把他变为全路径,比如上面自定义目录拼接\go\bin的(需要根据自定义路径拼接):D:\g\go\bin

注意2:如果上述配置依然不生效(或者只生效了一段时间)执行如下操作:

Win11位置:设置 > 应用 > golang

进入到如上应用的位置删除golang即可

2、自动安装

// 注意:复制命令的时候 $ 不要复制上
$ iwr https://raw.githubusercontent.com/voidint/g/master/install.ps1 -useb | iex

Linux/macOS安装

注意:如果系统中已经安装过golang编译器,优先推荐手动安装,自动安装可能会遇到一些坑;系统中没有安装过golang编译器的推荐自动安装,更方便快捷。

1、手动安装

最好选择最新版本,可以体验最新功能

1.进入下载链接后下载后缀为.linux-amd64.tar.gz的最新版本压缩包

2.创建自定义目录(这里的目录可以自行设置,只要配置的环境变量和这个是统一的即可,推荐此目录):~/.g

3.切换到~/.g创建一个bin目录,由此完整目录~/.g/bin(这里分出两步是为了给刚接触linux不久的方便理解,可以直接一步到位)

4.将所需的环境变量写入~/.g/env文件

注意:$ 不要复制粘贴出来,这条命令是226行内容写到目录/.g下的env文件中

$ cat >~/.g/env <<'EOF'
#!/bin/sh
# g shell setup
export GOROOT="${HOME}/.g/go"
export PATH="${HOME}/.g/bin:${GOROOT}/bin:$PATH"
export G_MIRROR=https://golang.google.cn/dl/
EOF

5.将~/.g/env导入到 shell 环境配置文件(如~/.bashrc~/.zshrc…)

同理如上第4条;当前使用的是~/.bashrc;

$ cat >>~/.bashrc <<'EOF'
# g shell setup
if [ -f "${HOME}/.g/env" ]; then
    . "${HOME}/.g/env"
fi
EOF

6.启用环境变量

使用~/.bashrc就执行如下命令:

source ~/.bashrc

使用~/.zshrc就执行如下命令:

source ~/.zshrc

2、自动安装

  • Linux/macOS(适用于 bash、zsh)

    # 建议安装前清空`GOROOT`、`GOBIN`等环境变量
    $ curl -sSL https://raw.githubusercontent.com/voidint/g/master/install.sh | bash
    $ cat << 'EOF' >> ~/.bashrc
    # 可选。检查g别名是否被占用
    if [[ -n $(alias g 2>/dev/null) ]]; then
        unalias g
    fi
    EOF 
    $ source "$HOME/.g/env"
    

基本使用命令

g ls-remote:查看可安装的golang版本

g install 版本号:下载安装指定版本号版本

g self update:自动升级至最新版本

g ls:查询已安装的go版本

g ls-remote stable:查询当前可供安装的stable状态的go版本

g use 版本号:切换至指定版本,需已下载

g uninstall 版本号:卸载一个已安装的go版本

来源链接:https://www.cnblogs.com/wylshkjj/p/18701235

© 版权声明
THE END
支持一下吧
点赞9 分享
评论 抢沙发
头像
请文明发言!
提交
头像

昵称

取消
昵称表情代码快捷回复

    暂无评论内容