Homebrew brew update 长时间没反应(或卡在 Updating Homebrew...)

Homebrew brew update 长时间没反应(或卡在 Updating Homebrew...)_brew update没反应_清木Moyu的博客-CSDN博客

一、问题简介
    Mac Homebrew 安装与卸载

    有时候在 brew update、brew install xxx … 命令的时候会长时间没反应或者卡在 Updating Homebrew...。

    原因是:由于我们安装的 brew 默认 repo 是官方的 repo,出于国内特殊原因无法连接,所以使用 Alibaba 的 Homebrew 镜像源进行加速后问题就能解决。

    平时我们执行 brew 命令安装软件的时候,跟下面 3 个仓库地址有关:

   

brew.git
homebrew-core.git
homebrew-bottles
二、解决办法(按步骤依次替换下去,后续可还原)
替换 brew.git 仓库地址
cd "$(brew --repo)"
git remote set-url origin https://mirrors.aliyun.com/homebrew/brew.git
    还原:

cd "$(brew --repo)"
git remote set-url origin https://github.com/Homebrew/brew.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
    还原:

cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin https://github.com/Homebrew/homebrew-core.git
替换 homebrew-bottles 访问地址:
    1、这个步骤跟 macOS 系统使用的 shell 版本有关系,先查看 shell 版本

echo $SHELL
    会输出

/bin/zsh
 

 
/bin/bash
    2、如果输出 /bin/zsh,访问地址换成这个:

echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.zshrc
source ~/.zshrc
    还原:

vi ~/.zshrc
# 然后,删除 HOMEBREW_BOTTLE_DOMAIN 这一行配置
source ~/.zshrc
    3、如果输出 /bin/bash,访问地址换成这个:

echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.bash_profile
source ~/.bash_profile
    还原:

vi ~/.bash_profile
# 然后,删除 HOMEBREW_BOTTLE_DOMAIN 这一行配置
source ~/.bash_profile
    配置到这里就结束了,可以再次执行

brew update
    如果正常运行,可以不用往下看了!!
    如果不行,就继续看:

brew doctor
# 输出如下的错误信息
/usr/local/Homebrew/Library/Homebrew/global.rb:12:in `require': cannot load such file -- active_support/core_ext/object/blank (LoadError)
from /usr/local/Homebrew/Library/Homebrew/global.rb:12:in `<top (required)>'
from /usr/local/Homebrew/Library/Homebrew/brew.rb:23:in `require_relative'
from /usr/local/Homebrew/Library/Homebrew/brew.rb:23:in `<main>'
    无论报什么错误,先不管,执行以下命令

brew update-reset
    等待更新完成之后,再次执行

brew update
    如果正常运行,可以不用往下看了!!
    如果报错 homebrew-core is a shallow clone.

    Error:
      homebrew-core is a shallow clone.
    To `brew update`, first run:
      git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
    This command may take a few minutes to run due to the large size of the repository.
    This restriction has been made on GitHub's request because updating shallow
    clones is an extremely expensive operation due to the tree layout and traffic of
    Homebrew/homebrew-core and Homebrew/homebrew-cask. We don't do this for you
    automatically to avoid repeatedly performing an expensive unshallow operation in
    CI systems (which should instead be fixed to not use shallow clones). Sorry for
    the inconvenience!
    删除 homebrew-core 后更新即可

cd /usr/local/Homebrew/Library/Taps/homebrew
rm -rf homebrew-core
brew upgrade
    使用 $ brew upgrade 后会重新更新 homebrew-core
    如果 $ brew upgrade 安装速度太慢,直接 control + c 停下来,按下面的方式进行安装

    // 进入 Taps 文件夹

cd /usr/local/Homebrew/Library/Taps
    // 新建 homebrew 文件并进入,如果有这个文件可以直接进入
 

mkdir homebrew && cd homebrew
# 或
cd homebrew
    // Git 下载

git clone git://mirrors.ustc.edu.cn/homebrew-core.git
成功之后,执行安装命令,中途需要回车确认:

/bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.sh)"
    最后看到 ==> Installation successful! 就说明安装成功了。

    最后可以在更新一下,一般现在已经是最新版本了,然后就可以通过 brew 进行安装工具了。

brew update

————————————————
版权声明:本文为CSDN博主「清木Moyu」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sun124608666/article/details/126015543

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值