brew install 慢的解决方法

brew install 慢的原因
brew install 会先去执行 brew update
而 brew update,会依次更新



brew
homebrew-core
homebrew-cask



而以上三个的来源都在 github,国内 github 的连接极不稳定,国此速度才会很慢

解决方法
最直观的解决方法,就是不从 github 更新。而走别的境像源,可以选择第三方的源,或是建立本地境像。



建立本地境象的方法:



cd ~/Documents
mkdir repository
cd repository



git clone –mirror https://github.com/Homebrew/brew.git
git clone –mirror https://github.com/Homebrew/homebrew-core.git
git clone –mirror https://github.com/Homebrew/homebrew-cask.git



cd /usr/local/Homebrew/
git remote set-url origin ~/Documents/repository/brew.git



cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core
git remote set-url origin ~/Documents/repository/homebrew-core.git



cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask
git remote set-url origin ~/Documents/repository/homebrew-cask.git
与第三方源比较
优点:由于镜像在本地,等同于完全跳过了 update 阶段,安装很顺畅
缺点:需要手动同步境像,不过对于 brew 这类实时性要求不高的软件来说,这可能也是一个优点



手动更新方式



cd ~/Documents/repository/brew.git
git remote update



cd ~/Documents/repository/homebrew-core.git
git remote update



cd ~/Documents/repository/homebrew-cask.git
git remote update



brew update



cd /usr/local/Homebrew/
git remote set-url origin /Users/didi/brew/repository/brew



cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core
git remote set-url origin /Users/didi/brew/repository/homebrew-core



cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask
git remote set-url origin /Users/didi/brew/repository/homebrew-cask



在国内的网络环境下使用 Homebrew 安装软件的过程中可能会长时间卡在 Updating Homebrew 这个步骤。



例:执行 brew install composer 命令



➜ ~ brew install composer
Updating Homebrew… # 如果碰到长时间卡在这里,参考以下 2 种处理方法



方法 1:按住 control + c 取消本次更新操作
➜ ~ brew install composer
Updating Homebrew…
^C
按住 control + c 之后命令行会显示 ^C,就代表已经取消了 Updating Homebrew 操作



大概不到 1 秒钟之后就会去执行我们真正需要的安装操作了



➜ ~ brew install composer
Updating Homebrew…
^C==> Satisfying dependencies
==> Downloading https://getcomposer.org/download/1.7.2/composer.phar

这个方法是临时的、一次性的



方法 2:使用 Alibaba 的 Homebrew 镜像源进行加速
平时我们执行 brew 命令安装软件的时候,跟以下 3 个仓库地址有关:



brew.git



homebrew-core.git



homebrew-bottles



通过以下操作将这 3 个仓库地址全部替换为 Alibaba 提供的地址




  1. 替换 / 还原 brew.git 仓库地址

    替换成阿里巴巴的 brew.git 仓库地址:


    cd “$(brew –repo)”
    git remote set-url origin https://mirrors.aliyun.com/homebrew/brew.git





#=======================================================



还原为官方提供的 brew.git 仓库地址


cd “$(brew –repo)”
git remote set-url origin https://github.com/Homebrew/brew.git




  1. 替换 / 还原 homebrew-core.git 仓库地址

    替换成阿里巴巴的 homebrew-core.git 仓库地址:


    cd “$(brew –repo)/Library/Taps/homebrew/homebrew-core”
    git remote set-url origin https://mirrors.aliyun.com/homebrew/homebrew-core.git





#=======================================================



还原为官方提供的 homebrew-core.git 仓库地址


cd “$(brew –repo)/Library/Taps/homebrew/homebrew-core”
git remote set-url origin https://github.com/Homebrew/homebrew-core.git




  1. 替换 / 还原 homebrew-bottles 访问地址
    这个步骤跟你的 macOS 系统使用的 shell 版本有关系



所以,先来查看当前使用的 shell 版本



echo $SHELL



如果你的输出结果是 /bin/zsh,参考?的 zsh 终端操作方式


如果你的输出结果是 /bin/bash,参考?的 bash 终端操作方式



3.1 zsh 终端操作方式


替换成阿里巴巴的 homebrew-bottles 访问地址:


echo ‘export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles’ » ~/.zshrc
source ~/.zshrc



#=======================================================



还原为官方提供的 homebrew-bottles 访问地址


vi ~/.zshrc


然后,删除 HOMEBREW_BOTTLE_DOMAIN 这一行配置


source ~/.zshrc



3.2 bash 终端操作方式


替换 homebrew-bottles 访问 URL:


echo ‘export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles’ » ~/.bash_profile
source ~/.bash_profile



#=======================================================



还原为官方提供的 homebrew-bottles 访问地址


vi ~/.bash_profile


然后,删除 HOMEBREW_BOTTLE_DOMAIN 这一行配置


source ~/.bash_profile



Category web