Невозможно варить версии переключения go - PullRequest
0 голосов
/ 03 октября 2019

У меня установлены версии 1.13.1 и 1.12.9

$brew list --versions | grep go
go 1.13.1
go@1.12 1.12.9

Но я не могу переключиться на 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

И когда я внимательно смотрю на версии go (без grep)

$brew list --versions go
go 1.13.1

Значит, я сделал что-то не так, когда установил go 1.12, но что? Я использовал brew install go@1.12, я должен был использовать другой синтаксис?

1 Ответ

1 голос
/ 03 октября 2019

go и go@1.12 устанавливаются как два пакета с разными именами, что означает, что они установлены в разных местах. /usr/local/Cellar/go и /usr/local/Cellar/go@1.12.

В этой ситуации вы должны использовать brew link.

brew unlink go

brew link go@1.12 --force

Дополнительные пояснения по поводу brew switch. brew switch <version> используется для переключения версии, установленной с тем же именем пакета.

Например, если установлены оба go 1.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
...