建设银行重庆市分行官方网站,网站备案到公司,建设治安总队网站目的,网站建设的毕设报告 voidint制作的Golang版本安装管理#xff0c;非常好用。想装就装#xff0c;想换版本就换版本
除了一些使用go install的场景可能有不兼容#xff0c;主要是安装了工具有时候不能直接用。
GitHub - voidint/g: Golang Version Manager
使用方式很简单非常好用。想装就装想换版本就换版本
除了一些使用go install的场景可能有不兼容主要是安装了工具有时候不能直接用。
GitHub - voidint/g: Golang Version Manager
使用方式很简单我把作者github的readme抠下来图没法显示可以直接看项目首页
https://github.com/voidint/g
# g
注意master分支可能处于开发之中并非稳定版本请通过tag下载稳定版本的源代码或通过release下载已编译的二进制可执行文件。
g是一个 Linux、macOS、Windows 下的命令行工具可以提供一个便捷的多版本 go 环境的管理和切换。
特性
支持列出可供安装的 go 版本号支持列出已安装的 go 版本号支持在本地安装多个 go 版本支持卸载已安装的 go 版本支持在已安装的 go 版本之间自由切换支持软件自我更新 1.3.0
安装
自动化安装 Linux/macOS适用于bash、zsh # 建议安装前清空GOROOT、GOBIN等环境变量
$ curl -sSL https://raw.githubusercontent.com/voidint/g/master/install.sh | bash
$ echo unalias g ~/.bashrc # 可选。若其他程序如git使用了g作为别名。
$ source $HOME/.g/env手动安装linux/mac 下载release的二进制压缩包 将压缩包解压至PATH环境变量目录下推荐~/.g/bin目录 将所需的环境变量写入~/.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_MIRRORhttps://golang.google.cn/dl/
EOF将~/.g/env导入到shell环境配置文件如~/.bashrc、~/.zshrc… $ cat ~/.bashrc EOF
# g shell setup
if [ -f ${HOME}/.g/env ]; then. ${HOME}/.g/env
fi
EOF启用环境变量 $ source ~/.bashrc # 或source ~/.zshrc手动安装windows系统 powershell 创建目录mkdir ~/.g/bin 下载release的windows版本的二进制压缩包, 解压之后放到~/.g/bin目录下 默认二进制文件名是 g.exe, 如果你已经用g这个命令已经用作为 git 的缩写那么你可以把 g.exe 改为其他名字如 gvm.exe 执行命令code $PROFILE, 这个命令会用vscode打开默认的powershell配置文件 在 powershell 的默认配置文件中加入如下内容 $env:GOROOT$HOME\.g\go
$env:Path-join($HOME\.g\bin;, $env:GOROOT\bin;, $env:Path)再次打开 powershell 终端就可以使用 g 或者 gvm 命令了
使用
查询当前可供安装的stable状态的go版本
$ g ls-remote stable1.13.151.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 ls1.7.61.11.131.12.171.13.151.14.6
* 1.14.7查询可供安装的所有go版本
$ g ls-remote11.2.21.31.3.1... // 省略若干版本1.14.51.14.6
* 1.14.71.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 completedFAQ 环境变量G_MIRROR有什么作用 由于中国大陆无法自由访问 Golang 官网导致查询及下载 go 版本都变得困难因此可以通过该环境变量指定一个或多个镜像站点多个镜像站点之间使用英文逗号分隔g 将从该站点查询、下载可用的 go 版本。已知的可用镜像站点如下 Go官方镜像站点https://golang.google.cn/dl/Go语言中文网https://studygolang.com/dl阿里云开源镜像站点https://mirrors.aliyun.com/golang/ 环境变量G_EXPERIMENTAL有什么作用 当该环境变量的值为true时将开启所有的实验特性。 环境变量G_HOME有什么作用 按照惯例g 默认会将~/.g目录作为其家目录。若想自定义家目录Windows 用户需求强烈可使用该环境变量切换到其他家目录。由于该特性还属于实验特性需要先开启实验特性开关G_EXPERIMENTALtrue才能生效。特别注意该方案并不十分完美因此才将其归类为实验特性详见#18。 macOS 系统下安装 go 版本g 抛出[g] Installation package not found字样的错误提示是什么原因 Go 官方在1.16版本中才加入了对ARM架构的macOS系统的支持。因此ARM 架构的 macOS 系统下均无法安装1.15及以下的版本的 go 安装包。若尝试安装这些版本g 会抛出[g] Installation package not found的错误信息。 是否支持网络代理 支持。可在HTTP_PROXY、HTTPS_PROXY、http_proxy、https_proxy等环境变量中设置网络代理地址。 支持哪些 Windows 版本 因为g的实现上依赖于符号链接因此操作系统必须是Windows Vista及以上版本。 Windows 版本安装以后不生效 这有可能是因为没有把下载安装的加入到 $Path 的缘故需要手动将 $Path 纳入到用户的环境变量中。为了方便起见可以使用项目中的 path.ps1 的 PowerShell 脚本运行然后重新启动计算机即可。 支持源代码编译安装吗 不支持
鸣谢
感谢nvm、n、rvm等工具提供的宝贵思路。