无法 brew switch go 版本

mip*_*pnw 4 homebrew go

我已经安装了 1.13.1 和 1.12.9 版本

$brew list --versions | grep go
go 1.13.1
go@1.12 1.12.9
Run Code Online (Sandbox Code Playgroud)

但是我无法切换到 1.12,一个错误表明我只安装了 1.13.1 版本,这与之前的清单相矛盾。

$brew switch go 1.12
Error: go does not have a version "1.12" in the Cellar.
go installed versions: 1.13.1
Run Code Online (Sandbox Code Playgroud)

当我仔细查看 go 版本时(没有 grep)

$brew list --versions go
go 1.13.1
Run Code Online (Sandbox Code Playgroud)

所以我在安装 go 1.12 时一定是做错了什么,但是什么?我用过brew install go@1.12,我应该用另一种语法吗?

Sim*_*mba 8

go并且go@1.12作为具有不同名称的两个包安装,这意味着它们安装在不同的位置。/usr/local/Cellar/go/usr/local/Cellar/go@1.12

在这种情况下,您应该使用brew link.

brew unlink go

brew link go@1.12 --overwrite
Run Code Online (Sandbox Code Playgroud)

关于 的更多解释brew switchbrew switch <version>用于切换使用相同包名安装的版本。

例如,如果go1.13 和 1.13.1 都安装了,它们就会被放入

  • /usr/local/Cellar/go/1.13
  • /usr/local/Cellar/go/1.13.1

在这种情况下,请使用brew switch.

brew switch go 1.13
brew switch go 1.13.1
Run Code Online (Sandbox Code Playgroud)