[每周一更]-(第54期):Go的多版本管理工具

[每周一更]-(第54期):Go的多版本管理工具_第1张图片

参考

  • https://zhuanlan.zhihu.com/p/611253641
  • https://learnku.com/articles/78326

前文概要

Go语言从开始使用从1.13起步,随着泛型的支持,带领团队在转型Go的时候,做基础组件架构选型使用1.18,但是Go版本不断迭代想使用最新版本来体验下,类比前端中node,有个nvm工具;
联想到Go应该也会有对应的版本管理工具,果不其然是有的,还不止一个,下边来对比介绍一下。
配置完成就可以灵活切换不同GO版本,愉快的编码把!

  • gvm Go Version Manager(多年不更新了)
    • github:https://github.com/moovweb/gvm
  • g 是一个多平台(Linux、Windows、MacOS)的 go 多版本管理工具。
    • github:https://github.com/voidint/g

不同系统中如何安装

gvm

  • 由于仓库多年不更新,感兴趣的可自行了解,Windows这里不做文档安装介绍,可以源码学习了解

安装

  bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
Mac OS X Requirements
xcode-select --install
brew update
brew install mercurial
Linux Requirements
  • Debian/Ubuntu
sudo apt-get install curl git mercurial make binutils bison gcc build-essential
  • Redhat/Centos
sudo yum install curl
sudo yum install git
sudo yum install make
sudo yum install bison
sudo yum install gcc
sudo yum install glibc-devel
常用命令
gvm install go1.4
gvm use go1.4 [--default]

gvm install go1.4 -B
gvm use go1.4
export GOROOT_BOOTSTRAP=$GOROOT
gvm install go1.5

gvm list
gvm listall
gvm implode

g(采纳,满足需求)

安装包下载地址:github.com/voidint/g/releases

特性

  • 支持列出可供安装的 go 版本号
  • 支持列出已安装的 go 版本号
  • 支持在本地安装多个 go 版本
  • 支持卸载已安装的 go 版本
  • 支持在已安装的 go 版本之间自由切换
  • 支持清空安装包文件缓存
  • 支持软件自我更新(>= 1.5.0)
  • 支持软件绿色卸载(>= 1.5.0)
Windows+Git bash

下载地址:https://github.com/voidint/g/releases/download/v1.5.0/g1.5.0.windows-amd64.zip
找到对应的windows版本,下载g.exe,配置到环境变量
g安装成功后:环境变量需要切换:

  • 旧版本是go1.18.10,环境变量配置:C:\Program Files\Go\bin(需要先清掉)
  • 新的变量配置:C:\Users\xxx(用户名).g\go\bin
Mac/Linux

下载地址:https://github.com/voidint/g/releases/download/v1.5.0/g1.5.0.linux-amd64.tar.gz

  • 创建 g 家目录(推荐~/.g目录)

  • 下载release的二进制压缩包,并解压至 g 家目录下的 bin 子目录中(即~/.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_MIRROR=https://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
常用命令
查看远程稳定版本:             g ls-remote stable
查询已安装的 go 版本:         g ls
切换到另一个已安装的 go 版本:  g use 1.19.10
安装目标 go 版本1.20.5:      g install 1.20.6
卸载一个已安装的 go 版本:     g uninstall 1.19.10
更新 g 软件本身:              g self update
卸载 g 软件本身:              g self uninstall 
清空 go 安装包文件缓存:        g clean 

你可能感兴趣的:(每周一更,golang,开发语言,后端)