brew-upgrade
Upgrade outdated Homebrew packages
TLDR
Upgrade all outdated casks and formulae
Upgrade a specific formula/cask
Print what would be upgraded, but don't actually upgrade anything
SYNOPSIS
brew upgrade [options] [formula|cask …]
PARAMETERS
--dry-run
Show upgraded formulae/casks without upgrading.
--verbose
Print verbose logs of build steps.
--debug
Enable debug output for troubleshooting.
--force-bottle
Install bottles even if blocked by architecture.
--ignore-pinned
Upgrade pinned formulae too.
--keep-old
Retain previous versions during upgrade.
--force
Force upgrade even if already up-to-date.
--cask
Treat all named arguments as casks.
--greedy
Include casks with auto-update policies.
--fetch-HEAD
Fetch latest upstream changes (HEAD).
DESCRIPTION
The brew upgrade command is part of Homebrew (Linuxbrew on Linux), a popular package manager originally for macOS but ported to Linux. It updates all installed formulae (packages) or specified ones to their latest versions by fetching and building newer versions from source or bottles (pre-built binaries).
By default, it upgrades everything outdated, as listed by brew outdated. On Linux, it handles dependencies automatically, ensuring compatibility with the system's libraries. Use it regularly to keep software secure and feature-rich. It skips pinned formulae unless overridden and supports casks (GUI apps) with --cask, though cask support is limited on Linux compared to macOS.
Running without arguments upgrades all; specify formulae for targeted updates. Verbose output aids troubleshooting, and dry-run previews changes without applying them. Ideal for servers or desktops managing open-source tools like Git, Node.js, or Python.
CAVEATS
On Linux, bottle support is limited; many builds from source. Requires git and build tools. Casks are macOS-focused with poor Linux support. Run as non-root.
EXAMPLES
brew upgrade
brew upgrade git wget
brew upgrade --dry-run --verbose
LINUX NOTES
Use Linuxbrew/ Homebrew-on-Linux. Install prefix usually $HOME/.linuxbrew. Conflicts possible with distro packages like apt.
HISTORY
Homebrew created by Max Howell in 2009 for macOS. Linuxbrew forked in 2013 by Michka Popov for glibc/musl support. Merged back as official Linux support in 2018. brew upgrade evolved from early brew update behaviors.
SEE ALSO
brew(1), brew-install(1), brew-outdated(1), brew-list(1), apt(8)


