Homebrew是什么
Homebrew 是一个MacOS
上的包管理器,你可以用它来安装管理软件,功能非常强大,基本上只要是MacOS
上能安装的软件,你通过Homebrew 都能够安装。类似于Linux
上的yum
,或者nodejs的npm
。
有人可能会说,我要安装软件,直接到App Store
上下载不就行了吗?但是并不是所有,或者说,大部分软件你在App Store
上找不到的,特别是对于开发人员所需的软件更是,基本在App Store
找不到。
什么是Homebrew的源
其实就是一个git
的url
,对应的是git
仓库。
每次通过Homebrew安装软件,Homebrew会根据源,会比对、下载(或者merge)源仓库到本地,然后根据要下载的软件找到对应的xxx.rb
文件,然后再根据rb
文件中内容一步步的校验、下载、安装软件。
为什么要替换Homebrew的源
因为慢慢慢慢啊!Homebrew原始源是以下:
# homebrew源
https://github.com/Homebrew/brew.git
# homebrew-core源
https://github.com/Homebrew/homebrew-core.git
# homebrew-cask源
https://github.com/Homebrew/homebrew-cask.git
大家可以看到,都是github
,国内访问这些源时,经常性的慢出翔,所以必须替换为国内源,加快速度。
开始替换(4个地方)
国内源有几个不错的:
- 中科大 https://mirrors.ustc.edu.cn/
- 清华 https://mirrors.tuna.tsinghua.edu.cn/
- 阿里 https://developer.aliyun.com/mirror/ (这个还是不推荐了,连
home-cask
都没有)
以下是替换清华的源
# 替换brew.git源
git -C "$(brew --repo)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git
# 替换 homebrew-core.git源
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git
# 替换 homebrew-cask.git源
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-cask.git
其实替换这三个源就可以了,另外就是homebrew-bottles
,这个配置个HOMEBREW_BOTTLE_DOMAIN
环境变量,不过我发现我不配置也没啥问题:
# 使用bash的话
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.bash_profile
source ~/.bash_profile
# 使用zsh的话
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.zshrc
source ~/.zshrc
以下是替换为中科大的源
# brew.git源
git -C "$(brew --repo)" remote set-url origin https://mirrors.ustc.edu.cn/brew.git
# homebrew-core.git源
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
# homebrew-cask.git源
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-cask.git
# 配置homebrew-bottles
## bash用户
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile
source ~/.bash_profile
## zsh用户
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.zshrc
source ~/.zshrc
复核配置是否成功
设置完之后,可以执行以下命令,查看配置是否已经替换成功
# 查看brew.git源
git -C "$(brew --repo)" config --get remote.origin.url
# 查看homebrew-core.git源
git -C "$(brew --repo homebrew/core)" config --get remote.origin.url
# 查看homebrew-cask.git源
git -C "$(brew --repo homebrew/cask)" config --get remote.origin.url
最后执行brew update
来尝试一下看是否速度更快。
重置为官方源
如果你想重置为官方的源,可以如下操作:
# brew.git源
git -C "$(brew --repo)" remote set-url origin https://github.com/Homebrew/brew.git
# homebrew-core.git源
git -C "$(brew --repo homebrew/core)" remote set-url origin https://github.com/Homebrew/homebrew-core
# homebrew-cask.git源
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://github.com/Homebrew/homebrew-cask
另外记住删除 HOMEBREW_BOTTLE_DOMAIN
环境变量