Homebrew

本文将介绍Homebrew的安装与使用。


Homebrew

简介

HomebrewOS X上类似于apt-getyum的软件包管理器,软件源依托于Github之上,所以在国内的网络环境之下,常常会出现使用Homebrew安装软件时,如brew install sshfs,经常会长时间卡在Updating Homebrew...

OS X 10.9开始支持

安装

首先安装依赖Xcode命令行工具

1
$ xcode-select --install

然后安装Homebrew

1
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

卸载

1
2
$ ruby -e "$(curl -fsSL $https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
$ sudo rm -rf /usr/local/

解决软件源更新慢问题

取消更新

当安装过程中,卡在Updating Homebrew...时,我们可以按住control + c,来取消本次更新;之后命令行会显示^C,表示取消成功,后面会继续安装工作。

这个方法是临时,仅在本次安装生效。

关闭自动更新

Homebrew的软件源更新,是在每次安装时自动执行的,可以通过配置进行关闭。

zsh终端方式:

1
2
$ echo 'export HOMEBREW_NO_AUTO_UPDATE=true' >> ~/.zshrc
$ source ~/.zshrc

bash终端方式:

1
2
$ echo 'export HOMEBREW_NO_AUTO_UPDATE=true' >> ~/.bash_profile
$ source ~/.bash_profile

这个方法是永久的,每次安装都会生效,但弊端是无法获取最新的软件。

替换软件源

这里推荐中科大的镜像源,亲测可用。

替换homebrew源

1
2
$ cd "$(brew --repo)"
$ git remote set-url origin https://mirrors.ustc.edu.cn/brew.git

还原官方源:

1
2
$ cd "$(brew --repo)"
$ git remote set-url origin https://github.com/Homebrew/brew.git

替换homebrew-core源(核心软件仓库)

1
2
$ cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
$ git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git

还原官方源:

1
2
$ cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
$ git remote set-url origin https://github.com/Homebrew/homebrew-core.git

替换homebrew-cask源(macOS应用)

1
2
$ cd "$(brew --repo)"/Library/Taps/homebrew/homebrew-cask 
$ git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-cask.git

若提示找不到"$(brew --repo)"/Library/Taps/homebrew/homebrew-cask,则:

1
2
$ cd "$(brew --repo)"/Library/Taps/homebrew/
$ git clone https://mirrors.ustc.edu.cn/homebrew-cask.git

还原官方源:

1
2
$ cd "$(brew --repo)"/Library/Taps/homebrew/homebrew-cask  
$ git remote set-url origin https://github.com/Homebrew/homebrew-cask

brew cask安装软件,会自动创建软链接到Application目录,这样在Launchpad中也能查看到安装的软件,方便启动软件

替换homebrew bottles源(预编译二进制软件包)

zsh终端方式:

1
2
$ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.zshrc
$ source ~/.zshrc

bash终端方式:

1
2
$ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile
$ source ~/.bash_profile

还原官方源:进入如上终端配置文件,并删除HOMEBREW_BOTTLE_DOMAIN改行配置,并
source终端配置文件,使之生效。

常见错误

  • Error: Another active Homebrew update process is already in progress.
    解决方法:rm -rf /usr/local/var/homebrew/locks

Homebrew常用命令

  • 查看Homebrew版本:

    1
    $ brew -v
  • Homebrew帮助信息:

    1
    $ brew [cask] -h
  • 更新Homebrew:

    1
    $ brew update
  • 更新Homebrew cask:

    1
    $ brew cask upgrade
  • 安装软件:

    1
    $ brew [cask] install <packageName>
  • 卸载软件:

    1
    $ brew [cask] uninstall <packageName>
  • 查询可用软件:

    1
    $ brew search <packageName>
  • 查看已安装软件:

    1
    $ brew [cask] list
  • 查看软件信息:

    1
    $ brew [cask] info <packageName>

确认shell版本方式

1
$ echo $SHELL

输出/bin/zshzsh终端,输出/bin/bashbash终端。

About me

forthebadge

Creative Commons License This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。

微信公众号同步更新,微信搜索"AnSwEr不是答案"或者扫描二维码,即可订阅。
AnSwEr(Weijie Yuan) wechat