Homebrew是Mac系统下非常好用的包管理工具。
1. 安装
官网介绍的安装方式很简单,在terminal当中粘贴
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
就可以快速安装好homebrew。
但是在国内的网络环境下,使用官网推荐的方式安装无法成功,会遇到如下的错误
curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused
网上有一些解决方案:
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
2. 基本使用
2.1、安装卸载软件
- brew --version 或者 brew -v 显示brew版本信息
- brew install 安装指定软件
- brew uninstall 卸载指定软件
- brew list 显示所有的已安装的软件
- brew search text 搜索本地远程仓库的软件,已安装会显示绿色的勾
- brew search /text/ 使用正则表达式搜软件
- brew info 显示指定软件信息
- brew reinstall 重新安装指定软件,先卸载后安装
- brew install --build-from-source 源码安装指定软件,可以给定指定参数
- brew commands 列出所有可用命令
2.2、升级软件相关
- brew update 自动升级homebrew (从github下载最新版本)
- brew outdated 检测已经过时的软件
- brew upgrade 升级所有已过时的软件,即列出的以过时软件
- brew upgrade 升级指定的软件
- brew pin 禁止指定软件升级
- brew unpin 解锁禁止升级
- brew upgrade --all 升级所有的软件包,包括未清理干净的旧版本的包
- brew edit 编辑软件,不会的情况下慎用
- brew tap 列出本地资源仓库,其中 homebrew 是默认仓库,其它都是第三方仓库
- brew tap <user/repo> 添加第三方仓库,命名的规则按照github来定的。
- brew untap <user/repo> 删除仓库
- brew deps 查看指定软件依赖于哪些软件
- brew uses 查看指定软件被哪些软件所依赖
2.3、清理相关
homebrew再升级软件时候不会清理相关的旧版本,在软件升级后我们可以使用如下命令清理
- brew cleanup -n 列出需要清理的内容
- brew cleanup 清理指定的软件过时包
- brew cleanup 清理所有的过时软件
- brew unistall 卸载指定软件
- brew unistall --force 彻底卸载指定软件,包括旧版本
通过brew安装的文件会自动设置环境变量,所以不用担心命令行不能启动的问题。
比如安装好了gradle,即可运行 gradle -v
3.更换国内源
3.1. 替换brew.git:
$ cd "$(brew --repo)"
中科大:
$ git remote set-url origin https://mirrors.ustc.edu.cn/brew.git
清华:
$ git remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git
3.2. 替换homebrew-core.git:
$ cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
中科大:
$ git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
清华:
$ git remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git
3.3. 替换homebrew-bottles:
中科大:
$ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile
$ source ~/.bash_profile
清华:
$ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.bash_profile
$ source ~/.bash_profile
- 应用:
$ brew update