跳轉到內容

Homebrew 包管理與自動化配置 2026

Homebrew 包管理

🍺 macOS 缺少的包管理器。 Homebrew 是 Mac 開發者的必備工具,它讓安裝、更新、管理軟件變得無比簡單。從命令行工具到圖形界面應用,從編程語言到數據庫,一鍵搞定。本文帶你從入門到精通,打造高效的 Homebrew 工作流。

本文將帶你係統掌握:

  • ✅ Homebrew 安裝與配置
  • ✅ 常用命令速查
  • ✅ Cask 應用管理
  • ✅ Taps 第三方源
  • ✅ Brewfile 批量管理
  • ✅ 自動化配置腳本
  • ✅ 性能優化與清理
  • ✅ 常見問題處理

一、Homebrew 簡介

1.1 什麼是 Homebrew

Homebrew 是 macOS(及 Linux)的包管理器:

  • 安裝軟件:一條命令搞定
  • 更新軟件:一鍵全部更新
  • 卸載軟件:乾淨徹底
  • 管理依賴:自動處理

1.2 核心概念

概念說明
formula命令行軟件包(如 git、node)
caskGUI 應用程序(如 Chrome、VS Code)
tap第三方軟件源
keg某個 formula 的安裝目錄
Cellar所有 keg 的存放位置
Brewfile軟件清單文件,可批量安裝

二、安裝與配置

2.1 安裝 Homebrew

bash
# 官方安裝命令
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 驗證安裝
brew --version

2.2 配置環境變量

Intel Mac:

bash
# Homebrew 安裝在 /usr/local
echo 'eval "$(/usr/local/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/usr/local/bin/brew shellenv)"

Apple Silicon (M1/M2/M3/M4):

bash
# Homebrew 安裝在 /opt/homebrew
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"

2.3 換源加速

國內用戶建議使用中科大或清華鏡像:

中科大鏡像:

bash
# formula 源
git -C "$(brew --repo)" remote set-url origin https://mirrors.ustc.edu.cn/brew.git

# homebrew-core
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git

# homebrew-cask
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-cask.git

# 預編譯二進制包
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles/bottles' >> ~/.zprofile

清華鏡像:

bash
git -C "$(brew --repo)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.zprofile

2.4 常用環境變量

bash
# ~/.zprofile

# 禁止收集使用數據
export HOMEBREW_NO_ANALYTICS=1

# 自動更新(默認開啟)
export HOMEBREW_NO_AUTO_UPDATE=1  # 禁用自動更新

# 並行下載數
export HOMEBREW_JOBS=8

# 不顯示 emoji(舊終端)
export HOMEBREW_NO_EMOJI=1

# 安裝完成後不清理舊版本
export HOMEBREW_NO_INSTALL_CLEANUP=1

三、常用命令

3.1 軟件安裝與卸載

bash
# 安裝 formula
brew install git
brew install node python

# 安裝特定版本
brew install node@20

# 安裝 cask(GUI 應用)
brew install --cask google-chrome
brew install --cask visual-studio-code

# 卸載
brew uninstall git
brew uninstall --cask google-chrome

# 徹底卸載(包括配置文件)
brew uninstall --zap --cask app-cleaner

3.2 更新與升級

bash
# 更新 Homebrew 本身和公式列表
brew update

# 查看可更新的軟件
brew outdated

# 升級所有軟件
brew upgrade

# 升級指定軟件
brew upgrade git

# 升級 cask
brew upgrade --cask

3.3 搜索與信息

bash
# 搜索軟件
brew search node
brew search --cask chrome

# 查看軟件信息
brew info git
brew info --cask google-chrome

# 查看已安裝的軟件
brew list
brew list --cask

# 查看軟件依賴
brew deps git

3.4 服務管理

bash
# 查看運行中的服務
brew services list

# 啟動服務
brew services start mysql
brew services start postgresql

# 停止服務
brew services stop mysql

# 重啟服務
brew services restart mysql

# 開機自啟
brew services start mysql    # 自動註冊為開機啟動

3.5 清理與維護

bash
# 清理舊版本
brew cleanup
brew cleanup git           # 清理指定軟件

# 查看哪些可以清理
brew cleanup --dry-run

# 清理緩存
brew cleanup -s

# 診斷問題
brew doctor

# 修復權限
brew repair

# 編輯 formula
brew edit git

四、Cask 應用管理

4.1 常用 Cask 應用推薦

瀏覽器:

bash
brew install --cask google-chrome
brew install --cask firefox
brew install --cask arc
brew install --cask microsoft-edge

開發工具:

bash
brew install --cask visual-studio-code
brew install --cask iterm2
brew install --cask docker
brew install --cask postman
brew install --cask tableplus
brew install --cask cyberduck

效率工具:

bash
brew install --cask alfred
brew install --cask raycast
brew install --cask notion
brew install --cask obsidian
brew install --cask rectangle
brew install --cask karabiner-elements

媒體:

bash
brew install --cask vlc
brew install --cask iina
brew install --cask spotify

通訊:

bash
brew install --cask wechat
brew install --cask telegram
brew install --cask discord
brew install --cask slack

4.2 Cask 高級用法

bash
# 查看已安裝的 cask
brew list --cask

# 查看 cask 信息
brew info --cask google-chrome

# 重新安裝
brew reinstall --cask visual-studio-code

# 強制卸載
brew uninstall --force --cask app-name

五、Taps 第三方源

5.1 常用 Taps

bash
# 查看已添加的 tap
brew tap

# 添加 tap
brew tap homebrew/cask-fonts      # 字體
brew tap homebrew/cask-versions   # 舊版本應用
brew tap homebrew/services       # 服務管理

5.2 字體安裝

bash
# 添加字體源
brew tap homebrew/cask-fonts

# 搜索字體
brew search --cask font-fira

# 安裝字體
brew install --cask font-fira-code
brew install --cask font-hack-nerd-font
brew install --cask font-jetbrains-mono
brew install --cask font-cascadia-code

5.3 版本管理

bash
# 安裝特定版本的應用
brew tap homebrew/cask-versions

# 舊版本 Firefox
brew install --cask firefox-esr

# 舊版 Chrome
brew install --cask google-chrome-beta
brew install --cask google-chrome-canary

六、Brewfile 批量管理

6.1 什麼是 Brewfile

Brewfile 是一個軟件清單文件,格式如下:

ruby
# Brewfile

# taps
tap "homebrew/cask-fonts"
tap "homebrew/cask-versions"

# formulae
brew "git"
brew "node"
brew "python"
brew "pnpm"
brew "fzf"
brew "tmux"
brew "zsh"

# casks
cask "visual-studio-code"
cask "iterm2"
cask "google-chrome"
cask "alfred"

# 字體
cask "font-fira-code"

6.2 生成 Brewfile

將當前已安裝的軟件導出為 Brewfile:

bash
# 在當前目錄生成 Brewfile
brew bundle dump

# 生成到指定位置
brew bundle dump --file=~/Brewfile

# 強制覆蓋
brew bundle dump --force

6.3 從 Brewfile 安裝

bash
# 安裝當前目錄的 Brewfile 中的所有軟件
brew bundle

# 指定 Brewfile 路徑
brew bundle --file=~/Brewfile

# 僅檢查,不實際安裝
brew bundle check

# 列出要安裝的
brew bundle list

6.4 完整 Brewfile 示例

ruby
# Brewfile - 開發者必備工具

# ===== Taps =====
tap "homebrew/cask-fonts"
tap "homebrew/cask-versions"

# ===== 命令行工具 =====
# 基礎
brew "git"
brew "zsh"
brew "zsh-autosuggestions"
brew "zsh-syntax-highlighting"
brew "fzf"
brew "fd"
brew "ripgrep"
brew "bat"
brew "htop"
brew "tmux"
brew "tree"
brew "wget"
brew "curl"
brew "jq"
brew "htop"
brew "nano"

# 開發語言
brew "node"
brew "pnpm"
brew "python"
brew "go"
brew "rust"

# 數據庫
brew "mysql"
brew "postgresql"
brew "redis"
brew "mongodb-community"

# 雲服務
brew "awscli"
brew "kubectl"
brew "docker"

# 網絡
brew "openssl"
brew "dnsmasq"

# ===== GUI 應用 =====
cask "visual-studio-code"
cask "iterm2"
cask "google-chrome"
cask "firefox"
cask "docker"
cask "postman"
cask "tableplus"
cask "alfred"
cask "obsidian"
cask "notion"
cask "rectangle"
cask "vlc"
cask "spotify"
cask "telegram"
cask "wechat"

# ===== 字體 =====
cask "font-fira-code"
cask "font-jetbrains-mono"
cask "font-hack-nerd-font"

七、自動化配置腳本

7.1 一鍵安裝腳本

bash
#!/bin/bash
# setup-mac.sh - Mac 開發環境一鍵配置

set -e

echo "🚀 開始配置 Mac 開發環境..."

# 1. 安裝 Homebrew
if ! command -v brew &> /dev/null; then
    echo "📦 安裝 Homebrew..."
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

    # 配置環境變量
    if [[ $(uname -m) == 'arm64' ]]; then
        echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
        eval "$(/opt/homebrew/bin/brew shellenv)"
    else
        echo 'eval "$(/usr/local/bin/brew shellenv)"' >> ~/.zprofile
        eval "$(/usr/local/bin/brew shellenv)"
    fi
fi

# 2. 配置國內源
echo "🌐 配置國內鏡像源..."
git -C "$(brew --repo)" remote set-url origin https://mirrors.ustc.edu.cn/brew.git
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-cask.git

# 3. 安裝軟件
echo "🍺 安裝軟件..."

# 添加 taps
brew tap homebrew/cask-fonts
brew tap homebrew/cask-versions

# 基礎工具
brew install git zsh fzf fd ripgrep bat tmux htop tree wget jq

# 開發工具
brew install node pnpm python go
brew install mysql redis postgresql

# GUI 應用
brew install --cask visual-studio-code iterm2
brew install --cask google-chrome firefox
brew install --cask docker postman
brew install --cask alfred obsidian
brew install --cask vlc spotify

# 字體
brew install --cask font-fira-code font-jetbrains-mono

# 4. 配置 zsh
echo "💻 配置 zsh..."
if [ ! -d "$HOME/.oh-my-zsh" ]; then
    sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
fi

# 5. 生成 Brewfile
echo "📝 生成 Brewfile..."
brew bundle dump --force --file=~/Brewfile

echo "✅ 配置完成!請重新打開終端。"

7.2 使用方式

bash
# 保存為 setup-mac.sh
chmod +x setup-mac.sh
./setup-mac.sh

八、性能優化與清理

8.1 加速 Homebrew

使用國內鏡像:

參考 2.3 節換源。

禁用自動更新:

bash
export HOMEBREW_NO_AUTO_UPDATE=1

# 需要更新時手動執行
brew update && brew upgrade

並行下載:

bash
export HOMEBREW_JOBS=8

8.2 清理空間

bash
# 查看佔用空間
du -sh $(brew --prefix)

# 清理所有舊版本
brew cleanup

# 清理緩存下載
brew cleanup -s

# 清理 7 天前的緩存
brew cleanup --prune=7

8.3 常見問題修復

bash
# 診斷問題
brew doctor

# 修復權限問題
sudo chown -R $(whoami) $(brew --prefix)/*

# 重置 formula
brew reinstall git

# 強制卸載
brew uninstall --force git

# 卸載並刪除所有版本
brew uninstall --force git && brew cleanup git

九、開發語言管理

9.1 Node.js 版本管理

bash
# 安裝 nvm
brew install nvm

# 配置
export NVM_DIR="$HOME/.nvm"
source $(brew --prefix nvm)/nvm.sh

# 使用
nvm install 20
nvm use 20
nvm alias default 20

9.2 Python 版本管理

bash
# 安裝 pyenv
brew install pyenv

# 配置
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"

# 使用
pyenv install 3.12
pyenv global 3.12

9.3 Java 版本管理

bash
# 安裝 jenv
brew install jenv

# 安裝 Java
brew install openjdk@17
brew install openjdk@21

# 添加到 jenv
jenv add /opt/homebrew/opt/openjdk@17
jenv add /opt/homebrew/opt/openjdk@21

# 切換版本
jenv global 17

十、常用命令速查

bash
# ===== 基礎 =====
brew install <formula>      # 安裝
brew uninstall <formula>    # 卸載
brew upgrade                # 全部更新
brew update                 # 更新公式列表
brew search <keyword>       # 搜索
brew info <formula>         # 查看信息
brew list                   # 已安裝列表
brew doctor                 # 診斷問題
brew cleanup                # 清理

# ===== Cask =====
brew install --cask <app>   # 安裝 GUI 應用
brew uninstall --cask <app> # 卸載 GUI 應用
brew list --cask            # 已安裝 GUI 應用
brew upgrade --cask         # 更新 GUI 應用

# ===== 服務 =====
brew services list          # 服務列表
brew services start <name>  # 啟動服務
brew services stop <name>   # 停止服務
brew services restart <name> # 重啟服務

# ===== Bundle =====
brew bundle                 # 從 Brewfile 安裝
brew bundle dump            # 導出 Brewfile
brew bundle check           # 檢查是否都已安裝

# ===== Taps =====
brew tap                    # 列出 tap
brew tap <repo>             # 添加 tap
brew untap <repo>           # 移除 tap

十一、總結

Homebrew 是 Mac 開發者的瑞士軍刀:

  1. 安裝簡單:一條命令搞定
  2. 管理方便:統一安裝、更新、卸載
  3. Cask 強大:GUI 應用也能命令行管理
  4. Brewfile:批量安裝,快速配置新機器
  5. 自動化:配合腳本實現零配置環境搭建

🍺 善用 Homebrew,讓你的 Mac 配置變得可複製、可版本化、自動化。


相關文章推薦:

最後更新於: