golang多版本管理器
g是一個Linux、macOS、Windows下的命令列工具,可以提供一個便捷的多版本go環境的管理和切換。
特性
- 支援列出可供安裝的go版本號
- 支援列出已安裝的go版本號
- 支援在本地安裝多個go版本
- 支援解除安裝已安裝的go版本
- 支援在已安裝的go版本之間自由切換
安裝
自動化安裝
-
Linux/macOS(適用於bash、zsh)
# 建議安裝前清空`GOROOT`、`GOBIN`等環境變數 $ wget -qO- https://raw.githubusercontent. ... ll.sh | bash $ echo "unalias g" >> ~/.bashrc # 可選。若其他程式(如'git')使用了'g'作為別名。 $ source ~/.bashrc # 或者 source ~/.zshrc
手動安裝
- 下載對應平臺的二進位制壓縮包。
- 將壓縮包解壓至
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
使用
查詢當前可供安裝的stable
狀態的go版本
$ g ls-remote stable
1.11.9
1.12.4
安裝目標go版本1.12.4
$ g install 1.12.4
Installed successfully
$ go version
go version go1.12.4 darwin/amd64
查詢已安裝的go版本
$ g ls
1.12.4
查詢可供安裝的所有go版本
$ g ls-remote
1
1.2.2
1.3
1.3.1
... // 省略若干版本
1.11.7
1.11.8
1.11.9
1.12
1.12.1
1.12.2
1.12.3
1.12.4
安裝目標go版本1.11.9
$ g install 1.11.9
Installed successfully
$ go version
go version go1.11.9 darwin/amd64
切換到另一個已安裝的go版本
$ g ls
1.11.9
1.12.4
$ g use 1.12.4
go version go1.12.4 darwin/amd64
解除安裝一個已安裝的go版本
g uninstall 1.11.9
Uninstall successfully
FAQ
-
環境變數
G_MIRROR
有什麼作用?由於中國大陸無法自由訪問Golang官網,導致查詢及下載go版本都變得困難,因此可以通過該環境變數指定一個映象站點(如
https://golang.google.cn/dl/
),g將從該站點查詢、下載可用的go版本。 -
支援原始碼編譯安裝嗎?
不支援
鳴謝
相關文章
- Ubuntu安裝golang多版本UbuntuGolang
- Windows 下 Golang 多版本管理WindowsGolang
- Python多版本管理器-pyenv 介紹及部署記錄Python
- golang web框架,golang版本laravel 框架GolangWeb框架Laravel
- golang程式版本管理Golang
- OSX下的Python多版本管理器pyenv的安裝設定Python
- Mac OS X 下 Python 多版本管理器 pyenv 的安裝及使用MacPython
- php多程式管理器PHP
- golang 多維mapGolang
- tmux 多終端管理器UX
- TLS示例開發-golang版本TLSGolang
- golang 版本的MVC開發框架GolangMVC框架
- golang 版本的 curl 請求庫Golang
- InnoDB多版本
- 鎖定專案 Node 版本和包管理器
- 改進版glide golang版本控制IDEGolang
- 裝置管理閘道器(golang版本)Golang
- go-carbon 2.0.0 版本釋出, 要求最低 golang 版本 1.16Golang
- node 多版本控制
- [Flutter翻譯]每個專案都有獨立的Flutter版本 - Flutter版本管理器Flutter
- golang開發:環境篇(四)包管理器 glide的使用GolangIDE
- R語言安裝多個版本和多版本Rstudio管理R語言
- GCC 多版本切換GC
- python多版本管理Python
- InnoDB多版本學習
- 多個Jdk版本(轉)JDK
- jdk 多版本切換JDK
- nvm管理node多版本
- Mac配置多版本JDKMacJDK
- XYPlorer 21,多標籤檔案管理器
- Glide--Golang包版本管理工具IDEGolang
- 注意事項:golang 編譯的 glibc 版本Golang編譯
- 轉載:Ubuntu 升級 golang 版本完美步驟UbuntuGolang
- ubuntu多版本php切換UbuntuPHP
- flutter中的多版本控制Flutter
- 多專案Node版本控制
- OneinStack多版本PHP共存PHP
- 多版本gcc/g 共存方案GC