homebrewで管理しているパッケージのバージョンを切り替えて固定する
brew upgrade
するとパッケージのバージョンがあがる
上がることはいいのですが、言語などはバージョン上がってほしくないのでバージョンを切り替えたい、あるいは固定したいときにやること。
切り替え
過去インストールしたことのあるバージョンでないと切り替えられないので注意
インストールしたことないバージョンにしたい場合は別途作業が必要
- バージョン確認
% brew info golang go: stable 1.9.2 (bottled), HEAD Open source programming language to build simple/reliable/efficient software https://golang.org /usr/local/Cellar/go/1.4.2 (5,569 files, 595MB) Built from source on 2015-05-29 at 23:52:51 with: --with-cc-common /usr/local/Cellar/go/1.5.3 (5,339 files, 259.8MB) Built from source on 2016-02-19 at 23:42:46 /usr/local/Cellar/go/1.6.2 (5,778 files, 325.3MB) Poured from bottle on 2016-05-07 at 20:57:42 /usr/local/Cellar/go/1.8.3 (7,035 files, 282.0MB) Poured from bottle on 2017-06-07 at 16:39:36 /usr/local/Cellar/go/1.9.2 (7,646 files, 293.9MB) * Poured from bottle on 2017-11-06 at 13:38:18 ・ ・ ・
- 切り替え
% brew switch golang 1.8.3 Cleaning /usr/local/Cellar/go/1.4.2 Cleaning /usr/local/Cellar/go/1.5.3 Cleaning /usr/local/Cellar/go/1.6.2 Cleaning /usr/local/Cellar/go/1.8.3 Cleaning /usr/local/Cellar/go/1.9.2 3 links created for /usr/local/Cellar/go/1.8.3 % go version go version go1.8.3 darwin/amd64
upgradeの対象外にする
% brew pin golang % brew list --pinned
これを実行することで brew upgrade
を実行してもバージョンがあがらなくなる
pinの解除
% brew unpin golang
unpinすればまたバージョンがあがる
pinしているパッケージの確認
% brew ls --pinned go