终于找到了一款我喜欢的安装和管理 Go 版本的工具
一直以来 , 我都习惯通过源码安装 Go 。 我是这么做的:
1)git clone Go 源码
【终于找到了一款我喜欢的安装和管理 Go 版本的工具】$ git clone
2)需要安装什么版本就切换到对应的分支 , 比如安装 1.15.x
$ git checkout -b release-branch.go1.15 origin/release-branch.go1.15
如果本地之前已经存在该分支 , 直接 git checkout release-branch.go1.15 即可 。
3)将 go 整个目录复制到 /usr/local/go1.15 , 编译安装
4)创建软链:
ln -s go1.15 go
之后加上环境变量等 。
如果想要切换版本 , 只需要做类似上面的步骤 , 最后将 go 这个软链指向要切换的版本 。
我这种方式存在两个问题:
- 因为 Go1.5 实现了自举 , 对于没有安装 Go 的系统 , 需要先安装 Go1.4;
- 每次都编译 , 还是没那么方便 , 而且如果是 Windows 系统 , 可能会有一些问题(现在的 Windows 也可能没问题了?好久没使用 Windows 了 , 使用 Windows 的朋友可以留言告知下);
今天发现另外一个工具 , 和我手动管理多版本的思路类似 , 所以爱上了!
1、开发 goup 的初衷发音:Go Up 。 作者介绍 , 他开发了这个工具的原因:
1)操作系统发行版的包管理工具一般不会那么及时的升级 Go 到最新版本 , 特别是 Linux 发行版;
2)虽然安装和管理 Go 版本的工具不少 , 但作者认为要么存在一些问题 , 要么体验不好或缺失一些功能;(哈哈哈 , 很有道理是不是?造一个轮子 , 总是觉得别人的不够圆 , 自己的又大又圆 , 有木有?)
作者想要一个这样的工具:
- 不需要先安装了 Go 的某个版本;(我上面的管理方案就是需要先安装某个版本)
- 这个工具本身安装足够简单 , 最好一行命令搞定;
- 跨平台 , 在所有操作系统运行良好 , 至少在类 Unix 系统运行良好;
- 能方便的安装最新的 Go 版本;
- 能方便的安装 Go 的任意版本 , 包括 tip;
- 不会污染你的 Shell;
- 使用 Go 语言实现;
文章插图
一行代码安装 goup(推荐的方式):
$ curl -sSf| sh
3、使用介绍看看 goup 的帮助文档:$ goup helpThe Go installerUsage:goup [command]Available Commands:helpHelp about any commandinitInitialize the goup environment file.installInstall Go by providing a version (e.g. "1.15.2", or "tip"). If empty, use the latest version.showShow the current version of installed GoversionShow goup versionFlags:-h, --helphelp for goupUse "goup [command] --help" for more information about a command.
- install:安装对应的 Go 版本 , 也可以是 tip 。 如果不提供版本 , 则安装当前最新版本;
- show:显示当前生效的 Go 版本;
- init:会在 $HOME/.go 目录下生成一个 env 文件 , 内容是设置 PATH 环境变量 , 即将 $HOME/.go/bin 和 $HOME/.go/current/bin 加入 PATH 中;同时会往一些系统配置文件中加上 source "$HOME/.go/env";
- vivo一款新机现身跑分网!运存和系统信息通通曝光
- 2021 年,微软 Windows 的 ARM 转型终于能成了?
- 微信又迎来更新!你们想要的功能终于来了
- Clearbot:一款能自动在水上追踪收集垃圾的机器人
- 联想Yoga AIO 7发布 一款设计巧妙的27英寸旋转式一体电脑
- 1月12日!荣耀V40系列终于要来了!将采用库存“芯片”
- 微信也准备“收费”了?2大业务开始付费,网友:终于要来了
- 广受诟病的Edge同步短板终于补齐:现可同步历史记录
- 继iQOO、华为官宣后,雷军终于坐不住了,为小米11做准备
- 显示器|LG 将在CES 2021上展示一款可变身曲面屏OLED游戏显示器