Go多版本管理工具 - g

简介: `g` 是一个跨平台(Linux、Windows、MacOS)的 go多版本管理工具。

windows下如何切换多版本go环境

前几天在看一个基于 go1.12 的项目,但是电脑上装的是 go1.18,直接安装go1.12会提示要卸载1.18的版本,于是找解决办法。

使用 Go 版本管理工具 g

g 是一个多平台(Linux、Windows、MacOS)的 go多版本管理工具。

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

步骤:

  1. win + x 打开 Windows PowerShell, 创建目录 mkdir .g/bin

  2. 将安装包解压到 .g/bin 目录下

  3. 删掉现有 go版本 配置的环境变量Path,将.g/bin路径添加到Path中,同时将 .g\go\bin 路径也添加到Path。

    .g\versions\目录下是通过g工具下载的各种go版本,使用use命令时会创建软连接.g\go指向某个版本。

  4. Go默认下载地址是https://go.dev/dl/,需要配置Go的国内镜像地址,添加环境用户变量: G_MIRROR,值为 https://golang.google.cn/dl/

常用命令

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

# 安装目标 go 版本
g install 1.12.17

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

# 查询可供安装的所有 go 版本
g ls-remote

# 切换到另一个已安装的 go 版本
g use 1.18.10

# 卸载一个已安装的 go 版本
g uninstall 1.18.10

# 清空 go 安装包文件缓存
g clean 

# 查看 g 版本信息
g -v

# 更新 g 软件本身
g self update

# 卸载 g 软件本身
g self uninstall

可能的问题

初次安装执行useinstall命令的时候,因为需要创建软连接,所以可能会需要管理员权限,win + x 进入 Windows PowerShell(管理员)界面操作即可。

目录
相关文章
|
3月前
|
SQL 关系型数据库 MySQL
「Go开源」goose:深入学习数据库版本管理工具
「Go开源」goose:深入学习数据库版本管理工具
「Go开源」goose:深入学习数据库版本管理工具
|
Linux Go 开发工具
几种Go版本管理工具
几种Go版本管理工具
98 1
|
5天前
|
存储 JSON 监控
Viper,一个Go语言配置管理神器!
Viper 是一个功能强大的 Go 语言配置管理库,支持从多种来源读取配置,包括文件、环境变量、远程配置中心等。本文详细介绍了 Viper 的核心特性和使用方法,包括从本地 YAML 文件和 Consul 远程配置中心读取配置的示例。Viper 的多来源配置、动态配置和轻松集成特性使其成为管理复杂应用配置的理想选择。
23 2
|
9天前
|
JavaScript Java Go
探索Go语言在微服务架构中的优势
在微服务架构的浪潮中,Go语言以其简洁、高效和并发处理能力脱颖而出。本文将深入探讨Go语言在构建微服务时的性能优势,包括其在内存管理、网络编程、并发模型以及工具链支持方面的特点。通过对比其他流行语言,我们将揭示Go语言如何成为微服务架构中的一股清流。
|
3天前
|
Go 索引
go语言中的循环语句
【11月更文挑战第4天】
11 2
|
3天前
|
Go C++
go语言中的条件语句
【11月更文挑战第4天】
14 2
|
8天前
|
Ubuntu 编译器 Linux
go语言中SQLite3驱动安装
【11月更文挑战第2天】
30 7
|
8天前
|
关系型数据库 Go 网络安全
go语言中PostgreSQL驱动安装
【11月更文挑战第2天】
38 5
|
8天前
|
安全 Go
用 Zap 轻松搞定 Go 语言中的结构化日志
在现代应用程序开发中,日志记录至关重要。Go 语言中有许多日志库,而 Zap 因其高性能和灵活性脱颖而出。本文详细介绍如何在 Go 项目中使用 Zap 进行结构化日志记录,并展示如何定制日志输出,满足生产环境需求。通过基础示例、SugaredLogger 的便捷使用以及自定义日志配置,帮助你在实际开发中高效管理日志。
25 1
|
7天前
|
程序员 Go
go语言中的控制结构
【11月更文挑战第3天】
84 58