使用Homebrew下载程序的时候,会经常遇到因为网络问题而卡死的情况。于是查了下是否有国内镜像可以使用。找到了清华和阿里云两个相对比较好用的Homebrew镜像。
1
2
https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git
https://mirrors.aliyun.com/homebrew/brew.git
不过阿里云的镜像文档很久没有更新过了,比较推荐使用清华提供的镜像。
替换镜像
若是在macOS上初次安装Homebrew,需要确保系统中已经安装了 git 和 curl。若未安装的话可以在命令行输入 xcode-select --install
安装 Command Line Tools for Xcode 即可。
下面是切换为清华镜像过程,首先需要设置几个环境变量:
1
2
3
echo 'export HOMEBREW_BREW_GIT_REMOTE=https://mirrors.aliyun.com/homebrew/brew.git' >> ~/.zshrc
echo 'export HOMEBREW_CORE_GIT_REMOTE=https://mirrors.aliyun.com/homebrew/homebrew-core.git' >> ~/.zshrc
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.zshrc
我这里使用的zsh,若使用的是bash,直接将上面的 ~/.zshrc
替换为 ~/.bashrc
即可。
然后执行brew update
即可。
复原镜像
若是想要复原为官方的镜像,应该删除设置的环境变量 HOMEBREW_BOTTLE_DOMAIN、HOMEBREW_BREW_GIT_REMOTE 和 HOMEBREW_CORE_GIT_REMOTE 以免下次运行 brew update 时远程再次被更换。
然后执行以下命令修改为默认远程仓库:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
unset HOMEBREW_BREW_GIT_REMOTE
git -C "$(brew --repo)" remote set-url origin https://github.com/Homebrew/brew
# 以下针对 macOS 系统上的 Homebrew
unset HOMEBREW_CORE_GIT_REMOTE
BREW_TAPS="$(BREW_TAPS="$(brew tap 2>/dev/null)"; echo -n "${BREW_TAPS//$'\n'/:}")"
for tap in core cask{,-fonts,-drivers,-versions} command-not-found; do
if [[ ":${BREW_TAPS}:" == *":homebrew/${tap}:"* ]]; then # 只复原已安装的 Tap
brew tap --custom-remote "homebrew/${tap}" "https://github.com/Homebrew/homebrew-${tap}"
fi
done
# 重新拉取远程
brew update
文档参考
具体可以参考官方安装文档: