在 OSX ,主要通过 App Store 购买并安装应用软件。 这对普通用户来说,已经够用。
然而做程序开发,需要安装很多工具以及软件库, App Store 就爱莫能助了。 这时,便要借助于本文的主角—— Homebrew 。
Homebrew 号称 macOS 缺失的包管理工具, 其功能及用法类似于 Debian 下的 apt 以及 CentOS 下的 yum 。 通过 Homebrew , macOS 用户可以非常方便地管理软件包。 以安装 git 为例:
1
|
fasion@MacKhaos:~ $ brew install git
|
安装
打开终端,运行以下命令即可完成安装:
1
|
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
|
安装过程中需按提示输入密码。
安装过程输出这里省略了,详见: Homebrew安装详情 。
使用
以安装 Git 为例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
fasion@MacKhaos:~$ brew install git
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> Updated Formulae
chamber heroku lmod mypy
==> Downloading https://homebrew.bintray.com/bottles/git-2.16.3.high_sierra.bott
[#######################################################################] 100.0%
==> Pouring git-2.16.3.high_sierra.bottle.tar.gz
==> Caveats
Bash completion has been installed to:
/usr/local/etc/bash_completion.d
zsh completions and functions have been installed to:
/usr/local/share/zsh/site-functions
Emacs Lisp files have been installed to:
/usr/local/share/emacs/site-lisp/git
==> Summary
🍺 /usr/local/Cellar/git/2.16.3: 1,497 files, 34.5MB
fasion@MacKhaos:~$ git --version
git version 2.16.3
|
使用强大的 Homebrew ,一行命令便搞定了 Git 的安装!
brew 默认会自动升级已有的包,如果不想自动升级,可以设置 HOMEBREW_NO_AUTO_UPDATE
环境变量:
1
|
HOMEBREW_NO_AUTO_UPDATE=1 brew install node
|
软链维护
Homebrew 将软件安装完毕后,软链到 /usr/local/bin 目录下,以便在命令行中调用( PATH 环境变量 )。 如果不想使用 brew 安装的版本,可以执行 unlink 将相关软链删除:
1
2
|
fasion@MacKhaos:~$ brew unlink git
Unlinking /usr/local/Cellar/git/2.16.3... 210 symlinks removed
|
后续想用回 brew 安装的版本,执行 link 命令即可重新创建软链:
1
2
|
fasion@MacKhaos:~$ brew link git
Linking /usr/local/Cellar/git/2.16.3... 209 symlinks created
|
高级配置
Github API Token
Homebrew 依赖 Github 提供服务。 频繁操作时,可能会因为 Github 限制而失败。
解决方案是申请一个 API Token ,并设置到环境变量 HOMEBREW_GITHUB_API_TOKEN
:
1
|
export HOMEBREW_GITHUB_API_TOKEN="xxxx"
|
点击 New personal access token 可申请新的 Token :
填好描述之后,点击生成即可。 Token 生成后,要保管好,忘记了只能重新生成。
如果新 Token 只用于 Homebrew ,无须勾选任何权限。
【小菜笔记】系列文章首发于公众号【小菜学编程】,敬请关注: