brew 安裝指定版本命令行工具 tmux 多版本實現


Homebrew 是 macOS 命令安裝工具,其核心庫里的命令行在 github homebrew-core 倉庫上維護。

核心庫命令大概有 5000 條左右,大部分的命令行工具只保留了最新版本的 .rb 安裝腳本。因此,如果想通過 brew 安裝指定版本或命令的多個版本,需要借助 git 操作來實現。

接下來以同時安裝 tmux 最新版本和 2.4 版本為例進行說明:

 

1、安裝最新版 tmux

brew install tmux
tmux -V

安裝完成后運行 tmux -V 查看到當前最新版本為 tmux 2.8

2、查找 tmux 2.4 指定版本的 commit hash

下載 homebrew-core 至本地,查找 tmux.rb 提交歷史中 2.4 版本的 commit hash

git clone https://github.com/Homebrew/homebrew-core.git
cd homebrew-core
git log master --grep=2.4 Formula/tmux.rb

版本庫比較大,查詢一段時間后,命令行輸出以下內容:

commit 04c280961f568c8fcd25aa35d58834e016ccbd64
Author: BrewTestBot <brew-test-bot@googlegroups.com>
Date:   Thu Apr 20 13:27:39 2017 +0100

    tmux: update 2.4 bottle.

commit 2d2034afc6e4dfab0a1c48f5edd2c5478576293b
Author: ilovezfs <ilovezfs@icloud.com>
Date:   Thu Apr 20 05:22:28 2017 -0700

    tmux 2.4

    Closes #12673.

    Signed-off-by: ilovezfs <ilovezfs@icloud.com>
(END)

由此可知,tmux 2.4 版本的 commit hash 為 04c280961f568c8fcd25aa35d58834e016ccbd64

3、切換 git 指定分支使用本地腳本安裝 tmux

由於已經安裝過最新版 tmux 了,執行以下命令可以臨時刪除環境變量里的 alias 軟鏈

brew unlink tmux

在本地的 homebrew-core 目錄中,切換 git 至指定分支,並使用本地相對路徑,安裝需要的命令行工具。

git checkout 04c280961f568c8fcd25aa35d58834e016ccbd64
brew install ./Formula/tmux.rb

4、切換至任意版本的 tmux

安裝完成后,可以通過 ls 看到同時安裝了 2.4 和 2.8 兩個版本

ls /usr/local/Cellar/tmux

之后使用 brew switch 命令即可在多個不同版本之間進行切換

brew switch tmux 2.8
brew switch tmux 2.4

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM