はじめに
開発環境の統一などの理由により、ソフトウェアのバージョンを指定してインストールしなければならない場面がしばしばあります。
ここでは、homebrewにおける過去のソフトウェアインストール方法を説明します。
手順
既にインストールされている新しいバージョンを削除する
依存関係にも注意してください。
何もインストールしていない場合は飛ばしましょう。
console
brew uninstall <formula> # アンインストール
# brew uninstall hive hadoop # hiveの場合。hadoopが依存関係
brew cleanup -s # キャッシュ削除、-sオプションは削除内容を表示
unlink
とかで残しながらでも行けるのかな?未検証。
所望のFormulaを取りに行く
gitと戯れます。
console
cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula # Formulaへ移動
git fetch --unshallow # 全コミットをぶち抜く
git log <formula.rb> # コミットログを確認し、コミットハッシュをメモる
#git log hive.rb # hiveの場合
git checkout <commitID> <formula.rb> # 対象ファイルを巻き戻す
# git checkout 16ebe5f1843e6cb54856311ff0f676be53007329 hive.rb hadoop.rb # hive2.1.1の場合
インストールする
HOMEBREW_NO_AUTO_UPDATE=1
が重要。
これを指定しないと最新版がインストールされてしまいます。
console
HOMEBREW_NO_AUTO_UPDATE=1 brew install hive
以上で、過去のバージョンのソフトウェアをインストールできるはずです。