1 Star 0 Fork 0

coding_net_cloud_studio / go_version_g

Create your Gitee Account
Explore and code with more than 8 million developers,Free private repositories !:)
Sign up
Clone or Download
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README.md

g

GitHub release (latest by date) Build Status GoDoc codecov codebeat badge Go Report Card

注意:master分支可能处于开发之中并非稳定版本,请通过tag下载稳定版本的源代码,或通过release下载已编译的二进制可执行文件.

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

asciicast

特性

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

安装

自动化安装

  • Linux/macOS(适用于bash,zsh)

    腾讯coding.net的cloud studio适合的G_MIRROR环境变量如下:

     $ export G_MIRROR=https://gomirrors.org/
    # 建议安装前清空`GOROOT`,`GOBIN`等环境变量
    # gitee的附件下载的速度并不快
    $ curl -sSL https://gitee.com/coding_net_cloud_studio/go_version_g/raw/main/install.sh | bash
    $ echo "unalias g" >> ~/.bashrc # 可选.若其他程序(如'git')使用了'g'作为别名.
    $ source ~/.zshrc  # 或者 source ~/.bashrc
    # 直接用wget去下载, 中科大镜像最快,是首选 https://mirrors.ustc.edu.cn/golang/
    $ wget -c https://mirrors.ustc.edu.cn/golang/go1.18.2.linux-amd64.tar.gz #在cloud_studio中下载飞快
    $ wget -c https://gomirrors.org/dl/go/go1.18.2.linux-amd64.tar.gz #在cloud studio可以下载,下载速度慢
    $ wget -c https://golang.google.cn/dl/go1.18.2.linux-amd64.tar.gz #直接下载cloud_studio下载不了
    $ wget -c https://studygolang.com/dl/golang/go1.18.2.linux-amd64.tar.gz # 在cloud_studio中不能下载

手动安装

  • 下载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://gomirrors.org/
    EOF
  • 启用环境变量

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

使用

查询当前可供安装的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

更新 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 completed

FAQ

  • 环境变量G_MIRROR有什么作用?

    由于中国大陆无法自由访问Golang官网,导致查询及下载go版本都变得困难,因此可以通过该环境变量指定一个镜像站点(如https://gomirrors.org/),g将从该站点查询,下载可用的go版本.

  • 是否支持网络代理?

    支持.可在HTTP_PROXY,HTTPS_PROXY,http_proxy,https_proxy等环境变量中设置网络代理地址.

  • 支持哪些Windows版本?

    因为g的实现上依赖于符号链接,因此操作系统必须是Windows Vista及以上版本.

  • Windows 版本安装以后不生效?

    这有可能是因为没有把下载安装的加入到 $Path 的缘故,需要手动将 $Path 纳入到用户的环境变量中.为了方便起见,可以使用项目中的 path.ps1 的 PowerShell 脚本运行然后重新启动计算机即可.

  • 支持源代码编译安装吗?

    不支持

鸣谢

感谢nvm,n,rvm等工具提供的宝贵思路.

Repository Comments ( 0 )

Sign in to post a comment

About

0.在cloud studio中无法使用 1. Golang Version Manager 2. golang的版本管理器 3. https://github.com/voidint/g.git expand collapse
Go and 4 more languages
MIT
Cancel

Releases (1)

All

Contributors

All

Activities

Load More
can not load any more
Go
1
https://gitee.com/coding_net_cloud_studio/go_version_g.git
git@gitee.com:coding_net_cloud_studio/go_version_g.git
coding_net_cloud_studio
go_version_g
go_version_g
main

Search