使用 GVM 工具管理 Go 版本

2020-07-13     segmentfault官方

原標題:使用 GVM 工具管理 Go 版本

作者:Meng小羽

內容來源:SegmentFault 思否

在 Go 項目開發中,團隊要保持開發版本一致,怎麼能夠快速的安裝及部署並且切換 Go 環境,在這裡推薦一款工具 GVM ( Go Version Manager ),它可以便捷切換與自定義 Go Path 、Go Root 等參數,是一款實打實的多版本安裝及管理利器。

GVM,類似於ruby 中的 RVM,java 中的 jenv(國產),可用於方便管理 Go 的版本,它有如下幾個主要特性:

  • 管理 Go 的多個版本,包括安裝、卸載和指定使用 Go 的某個版本;

  • 查看官方所有可用的 Go 版本,同時可以查看本地已安裝和默認使用的 Go 版本;

  • 管理多個 GOPATH,並可編輯 Go 的環境變量;

  • 可將當前目錄關聯到 GOPATH;

  • 可以查看 GOROOT 下的文件差異。

安裝 Installing

bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/bins/gvm-installer)

或者,如果您使用的是zsh,只需使用zsh更改bash。

使用 GVM

使用 gvm 可以查看支持的操作:

~ gvmUsage: gvm [command]

Deion:GVM is the Go Version Manager

Commands:version - print the gvm version numberget - gets the latest code (for debugging)use - select a go version to use (--default to set permanently)diff - view changes to Go roothelp - display this usage textimplode - completely remove gvminstall - install go versionsuninstall - uninstall go versionscross - install go cross compilerslinkthis - link this directory into GOPATHlist - list installed go versionslistall - list available versionsalias - manage go version aliasespkgset - manage go packages setspkgenv - edit the environment for a package set

安裝 Go 版本

例如安裝 go1.13 版本:

go install go1.13

查看 Go 版本

~ gvm list

gvm gos (installed)

go1.12=> system

管理 Gopath 環境

GVM提供了一個比較簡單的工具gvm pkgset可以創建使用GOPATH環境:

~ gvm pkgset= gvm pkgset

* http://github.com/moovweb/gvm== DEION:GVM pkgset is used to manage various Go packages== Usagegvm pkgset Command

== Commandcreate - create a new package setdelete - delete a package setuse - select where gb and goinstall target and linkempty - remove all code and compiled binaries from package setlist - list installed go packages

卸載 Uninstall

卸載某個安裝好的 Go 版本:

go uninstall go1.13

開源支持

GVM 是一款使用 Shell 腳本實現的便捷工具,作為開源項目,推薦大家給一個 Star 支持。

https://github.com/moovweb/gvm

SegmentFault 思否社區和文章作者展開更多互動和交流。

文章來源: https://twgreatdaily.com/zh-mo/bPIrR3MBfGB4SiUwdmY2.html

Flutter 知識點

2020-08-10