rel:: [[MacOS]] [[cli]] [[dependency managers]]
## Links
- [Homepage](https://brew.sh/)
- [Docs](https://docs.brew.sh/)
## [Cheatsheet](https://devhints.io/homebrew)
### Commands
| | |
| ---------------------------------------------- | -------------------------- |
| `brew install git` | Install a package |
| `brew uninstall git` | Remove/Uninstall a package |
| `brew tap beeftornado/rmtree; brew rmtree git` | Uninstall with deps |
| `brew upgrade git` | Upgrade a package |
| `brew unlink git` | Unlink |
| `brew link git` | Link |
| `brew switch git 2.5.0` | Change versions |
| `brew list --versions git` | See what versions you have |
### Package Commands
| | |
| ------------------ | --------------------------- |
| `brew info git` | List versions, caveats, etc |
| `brew cleanup git` | Remove old versions |
| `brew edit git` | Edit this formula |
| `brew cat git` | Print this formula |
| `brew home git` | Open homepage |
| `brew search git` | Search for formulas |
### Global Commands
| | |
| --------------- | ------------------------ |
| `brew update` | Update brew and cask |
| `brew list` | List installed |
| `brew outdated` | What’s due for upgrades? |
| `brew doctor` | Diagnose brew issues |
### Brew Cask Commands
| | |
| ----------------------------- | --------------------------- |
| `brew install --cask firefox` | Install the Firefox browser |
| `brew list --cask` | List installed applications |
## Advanced
### Install a specific formula version by git hash
```bash
# install 6.20.3 of rocksdb
brew uninstall rocksdb
export HOMEBREW_NO_AUTO_UPDATE=1 # Prevent brew from auto-upgrading rocksdb
wget https://raw.githubusercontent.com/Homebrew/homebrew-core/01eac95681a15717b7bd92ad50d4513ca05daf2e/Formula/rocksdb.rb
brew install --build-from-source ./rocksdb.rb
unset HOMEBREW_NO_AUTO_UPDATE
```