安装golang多版本管理工具g,搭建Go+语言环境

chunjie 社区贡献者 2021-12-18 12:41:41

安装golang多版本管理工具g,搭建Go+语言环境

一、golang多版本管理工具g

概述

g是一个Linux、macOS、Windows下的命令行工具,可以提供一个便捷的多版本go环境的管理和切换。

1.github上的g:https://github.com/voidint/g/releases

github

特性

  • 支持列出可供安装的go版本号
  • 支持列出已安装的go版本号
  • 支持在本地安装多个go版本
  • 支持卸载已安装的go版本
  • 支持在已安装的go版本之间自由切换

g安装

(1)Linux/macOS

自动化安装
  • 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 ~/.bashrc # 或者 source ~/.zshrc
    
手动安装
  • 下载release的二进制压缩包

  • 将压缩包解压至PATH环境变量目录下(如/usr/local/bin

  • 编辑shell环境配置文件(如~/.bashrc~/.zshrc...)

    $ cat>>~/.bashrc<<'EOF'
    export GOROOT="${HOME}/.g/go"
    export PATH="${HOME}/.g/go/bin:$PATH"
    export G_MIRROR=https://golang.google.cn/dl/
    EOF
    
  • 启用环境变量

    $ source ~/.bashrc # 或source ~/.zshrc
    

    (2)Windows

    手动安装
  • 下载后解压出来只有一个exe文件,把它放在一个单独的目录

    示例:D:\g\g.exe

  • 开始配置环境变量,都以g为演示

  1. 配置下G_MIRROR,为了下载go的时候不翻墙
    G_MIRROR=https://studygolang.com/dl
    或者
    G_MIRROR=https://golang.google.cn/dl/
  2. 配置下G_HOME=C:\Users\(当前登录windows的用户目录)\(g工作目录)
    示例:g -> G_HOME=C:\Users\lang\.g
  3. 配置下GOROOT
    示例:GOROOT=%G_HOME%\go
    配置GOROOT,这个指向g工作目录下的go,g安装go版本后,会在这个路径下建立一个软链到versions目录下的指定版本,靠这个方法来控制当前的go版本,如果安装g之前已经安装过go了,需要修改GOROOT这个环境变量
  4. 配置下PATH
    编辑系统变量中的PATH变量,添加 D:\g\

g使用

查询当前可供安装的stable状态的go版本

$ g ls-remote stable
  1.13.15
  1.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 ls
  1.7.6
  1.11.13
  1.12.17
  1.13.15
  1.14.6
* 1.14.7

查询可供安装的所有go版本

$ g ls-remote
  1
  1.2.2
  1.3
  1.3.1
  ...    // 省略若干版本
  1.14.5
  1.14.6
* 1.14.7
  1.15rc1

切换到另一个已安装的go版本

$ g use 1.14.6
go version go1.14.6 darwin/amd64

卸载一个已安装的go版本

$ g uninstall 1.14.7
Uninstalled go1.14.7

二、Go+语言环境

Go+环境的安装

git clone https://github.com/goplus/gop.git
cd gop
# On mac/linux run:
./all.bash
# On Windows run:
all.bat
提示:实际上, all.bash 和 all.bat 内部都会执行 go run cmd/install.go

验证Go+环境

C:\Users\lang>gop
Gop is a tool for managing Go+ source code.

Usage:

        gop <command> [arguments]

The commands are:

        run         Run a Go+ program
        go          Convert Go+ packages into Go packages
        fmt         Format Go+ packages
        mod         module maintenance
        install     Build Go+ files and install target to GOBIN
        build       Build Go+ files
        clean       Clean all Go+ auto generated files
        env         prints Go+ environment information.
        test        Test Go+ packages
        version     Version prints the build information for Gop executables

Use "gop help <command>" for more information about a command.


C:\Users\lang>gop version
gop v1.0.x windows/amd64

三、Go+开发环境

VSCODE 上goplus插件安装

工欲善其事必先利其器,我们要开发gop代码,当然ide增强是必不可少的,vscode上的goplus插件提供了语法高亮、代码补全等功能。

goplus

初始化go+项目

新建gop文件夹,并在vs code中打开项目。

执行初始化与获取builtin

go mod init gop

go get github.com/goplus/gop/builtin
...全文
764 1 打赏 收藏 举报
写回复
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
ζ小菜鸡 社区贡献者 2021-12-23
  • 打赏
  • 举报
回复

学到了

相关推荐
发帖
Go+ 开发者社区

903

社区成员

Go+ 官方开发者社区。我们希望向广大的开发者和数据科学家介绍 Go+ 的定位和意义,并邀请更多开发者一起贡献代码、共建 Go+ 生态。 Go+ 官网:https://goplus.org/
其他 企业社区
社区管理员
  • Go+
  • 杨东杰
加入社区
帖子事件
创建了帖子
2021-12-18 12:41
社区公告

本社区为 Go+ 官方开发者社区。我们希望向广大的开发者和数据科学家介绍 Go+ 的定位和意义,并邀请更多开发者一起贡献代码、共建 Go+ 生态。

Go+ 官网:https://goplus.org/
GitHub地址:https://github.com/goplus/gop