優雅的使用 Brew 切換 Go 版本

Meng小羽發表於2020-11-01

友情提示:此篇文章大約需要閱讀 3分鐘42秒,不足之處請多指教,感謝你的閱讀。 訂閱本站

Brew 是 Mac 上包管理工具,和 Linux 上的 aptyumrpm 一樣,可以提供非圖形化軟體的安裝,昨天在打造宇宙最強 IDE 的時候,使用brew工具更新了一下軟體包,是我的 Go 版本升級到了最新版本,同時之前配置的多版本 Go 抹掉了,現在寫一下記錄,你如果需要的話可以使用一下。

之前寫過一個使用 GVM 版本管理工具的文章,這個是第三方工具管理的,都比較好用,你可以根據自己的需求安裝。

1 brew install

brew install go

預設你可以安裝一個 go 的最新版本,之後再安裝指定版本,使用 brew switch 命令切換就可以了。

2 brew switch

~ brew info go
go: stable 1.15.3 (bottled), HEAD

使用 brew info go 命令你可以看到當前目前的 go 可以切換的版本,接下來就安裝多個版本並且切換到對應的版本吧。

// 安裝指定 go 版本
brew install go@<version>
// forexample
brew install go@1.12.17

安裝好了 之後使用 brew info go 檢視是否可以切換了。

brew switch go 1.12.17

單純的使用上面的命令你會發現,go 不能使用了,並且會出現下面的提示:

~ brew switch go 1.12.17
Cleaning /usr/local/Cellar/go/1.12.17
Cleaning /usr/local/Cellar/go/1.15.3
0 links created for /usr/local/Cellar/go/1.12.17

建立了零個連線,就代表著沒有成功的將 go 版本指向你所需要的版本下,問題是什麼呢?現將 go 版本切回 go 1.15.3,你會發現可以切換並正常使用:

~ brew switch go 1.15.3
Cleaning /usr/local/Cellar/go/1.12.17
Cleaning /usr/local/Cellar/go/1.15.3
3 links created for /usr/local/Cellar/go/1.15.3

~ go version
go version go1.15.3 darwin/amd64

定位這個原因你需要看看為什麼沒有未給 go 1.12.17 版本建立軟連線,首先要找一下 go 預設安裝的位置,使用 go env 檢視安裝目錄:

/usr/local/Cellar/go/

使用 brew 工具在 MacOS Catalina 系統安裝的位置。

進入到目錄之後在 go 目錄下只有剛才預設安裝的 1.15.3 版本,並沒有自己安裝的版本,退出父級目錄看到了下載的 go@1.12.17 版本,由於軟連線連線的是上方的路徑,需要將這個目錄移動至 go 目錄下:

// 開啟預設目錄
cd /usr/local/Cellar/go/
// 退出目錄
cd ..
// 移動目錄至 go 目錄下
mv go@1.12.17 go/
// 重要!!! 重新命名資料夾
mv go@1.12.17 1.12.17

接下來使用切換命令 brew switch go <version> 就可以切換環境了。

本作品採用《CC 協議》,轉載必須註明作者和本文連結
Meng小羽

相關文章