<p>With <code>--verbose</code> or <code>-v</code>, many commands print extra debugging information. Note that these flags should only appear after a command.</p>
<dt><code>search</code><var>text</var>|<code>/</code><var>text</var><code>/</code></dt><dd><p>Perform a substring search of formula names for <var>text</var>. If <var>text</var> is
<dt><code>cleanup</code> [<code>--prune=</code><var>days</var>] [<code>--dry-run</code>] [<code>-s</code>] [<var>formulae</var>]</dt><dd><p>For all installed or specific formulae, remove any older versions from the
cellar. In addition, old downloads from the Homebrew download-cache are deleted.</p>
<dt><code>deps</code> [<code>--1</code>] [<code>-n</code>] [<code>--union</code>] [<code>--full-name</code>] [<code>--installed</code>] [<code>--include-build</code>] [<code>--include-optional</code>] [<code>--skip-recommended</code>] <var>formulae</var></dt><dd><p>Show dependencies for <var>formulae</var>. When given multiple formula arguments,
<dt><code>deps</code><code>--tree</code> [<var>filters</var>] (<var>formulae</var>|<code>--installed</code>)</dt><dd><p>Show dependencies as a tree. When given multiple formula arguments, output
individual trees for every formula.</p>
<p>If <code>--installed</code> is passed, output a tree for every installed formula.</p>
<p>The <var>filters</var> placeholder is any combination of options <code>--include-build</code>,
<code>--include-optional</code>, and <code>--skip-recommended</code> as documented above.</p></dd>
<dt><code>deps</code> [<var>filters</var>] (<code>--installed</code>|<code>--all</code>)</dt><dd><p>Show dependencies for installed or all available formulae. Every line of
output starts with the formula name, followed by a colon and all direct
dependencies of that formula.</p>
<p>The <var>filters</var> placeholder is any combination of options <code>--include-build</code>,
<code>--include-optional</code>, and <code>--skip-recommended</code> as documented above.</p></dd>
<dt><code>desc</code><var>formula</var></dt><dd><p>Display <var>formula</var>'s name and one-line description.</p></dd>
<dt><code>desc</code> [<code>-s</code>|<code>-n</code>|<code>-d</code>] <var>pattern</var></dt><dd><p>Search both name and description (<code>-s</code>), just the names (<code>-n</code>), or just the
the first search, making that search slower than subsequent ones.</p></dd>
<dt><code>diy</code> [<code>--name=</code><var>name</var>] [<code>--version=</code><var>version</var>]</dt><dd><p>Automatically determine the installation prefix for non-Homebrew software.</p>
<dt><code>fetch</code> [<code>--force</code>] [<code>--retry</code>] [<code>-v</code>] [<code>--devel</code>|<code>--HEAD</code>] [<code>--deps</code>] [<code>--build-from-source</code>|<code>--force-bottle</code>] <var>formulae</var></dt><dd><p>Download the source packages for the given <var>formulae</var>.
<dt><code>gist-logs</code> [<code>--new-issue</code>|<code>-n</code>] <var>formula</var></dt><dd><p>Upload logs for a failed build of <var>formula</var> to a new Gist.</p>
<dt><code>info</code><code>--json=</code><var>version</var> (<code>--all</code>|<code>--installed</code>|<var>formulae</var>)</dt><dd><p>Print a JSON representation of <var>formulae</var>. Currently the only accepted value
<dt><code>install</code><code>--interactive</code> [<code>--git</code>] <var>formula</var></dt><dd><p>Download and patch <var>formula</var>, then open a shell. This allows the user to
<dt><code>irb</code> [<code>--examples</code>]</dt><dd><p>Enter the interactive Homebrew Ruby shell.</p>
<p>If <code>--examples</code> is passed, several examples will be shown.</p></dd>
<dtclass="flush"><code>leaves</code></dt><dd><p>Show installed formulae that are not dependencies of another installed formula.</p></dd>
<dt><code>ln</code>, <code>link</code> [<code>--overwrite</code>] [<code>--dry-run</code>] [<code>--force</code>] <var>formula</var></dt><dd><p>Symlink all of <var>formula</var>'s installed files into the Homebrew prefix. This
<dt><code>linkapps</code> [<code>--local</code>] [<var>formulae</var>]</dt><dd><p>Find installed formulae that provide <code>.app</code>-style macOS apps and symlink them
<dt><code>list</code>, <code>ls</code> [<code>--full-name</code>]</dt><dd><p>List all installed formulae. If <code>--full-name</code> is passed, print formulae
with fully-qualified names. If <code>--full-name</code> is not passed, any other
options (e.g. <code>-t</code>) are passed to <code>ls</code> which produces the actual output.</p></dd>
<dt><code>list</code>, <code>ls</code><code>--unbrewed</code></dt><dd><p>List all files in the Homebrew prefix not installed by Homebrew.</p></dd>
<dt><code>list</code>, <code>ls</code> [<code>--versions</code> [<code>--multiple</code>]] [<code>--pinned</code>] [<var>formulae</var>]</dt><dd><p>List the installed files for <var>formulae</var>. Combined with <code>--verbose</code>, recursively
<dt><code>log</code> [<var>git-log-options</var>] <var>formula</var> ...</dt><dd><p>Show the git log for the given formulae. Options that <code>git-log</code>(1)
recognizes can be passed before the formula list.</p></dd>
<dt><code>migrate</code> [<code>--force</code>] <var>formulae</var></dt><dd><p>Migrate renamed packages to new name, where <var>formulae</var> are old names of
<dt><code>options</code> [<code>--compact</code>] (<code>--all</code>|<code>--installed</code>|<var>formulae</var>)</dt><dd><p>Display install options specific to <var>formulae</var>.</p>
<dt><code>outdated</code> [<code>--quiet</code>|<code>--verbose</code>|<code>--json=v1</code>] [<code>--fetch-HEAD</code>]</dt><dd><p>Show formulae that have an updated version available.</p>
<dt><code>search</code> [<code>--desc</code>] <var>text</var>|<code>/</code><var>text</var><code>/</code></dt><dd><p>Perform a substring search of formula names for <var>text</var>. If <var>text</var> is
<dt><code>search</code> (<code>--debian</code>|<code>--fedora</code>|<code>--fink</code>|<code>--macports</code>|<code>--opensuse</code>|<code>--ubuntu</code>) <var>text</var></dt><dd><p>Search for <var>text</var> in the given package manager's list.</p></dd>
<dt><code>style</code> [<code>--fix</code>] [<code>--display-cop-names</code>] [<var>formulae</var>|<var>files</var>]</dt><dd><p>Check formulae or files for conformance to Homebrew style guidelines.</p>
<p><var>formulae</var> is a list of formula names.</p>
<p><var>files</var> is a list of file names.</p>
<p><var>formulae</var> and <var>files</var> may not be combined. If both are omitted, style will run
style checks on the whole Homebrew <code>Library</code>, including core code and all
formulae.</p>
<p>If <code>--fix</code> is passed and <code>HOMEBREW_DEVELOPER</code> is set, style violations
will be automatically fixed using RuboCop's <code>--auto-correct</code> feature.</p>
<p>If <code>--display-cop-names</code> is passed, the RuboCop cop name for each violation
is included in the output.</p>
<p>Exits with a non-zero status if any style violations are found.</p></dd>
<dt><code>switch</code><var>name</var><var>version</var></dt><dd><p>Symlink all of the specific <var>version</var> of <var>name</var>'s install to Homebrew prefix.</p></dd>
<dtclass="flush"><code>tap</code></dt><dd><p>List all installed taps.</p></dd>
<dt><code>tap</code> [<code>--full</code>] <var>user</var><code>/</code><var>repo</var> [<var>URL</var>]</dt><dd><p>Tap a formula repository.</p>
<p>With <var>URL</var> unspecified, taps a formula repository from GitHub using HTTPS.
<dt><code>tap-info</code><code>--json=</code><var>version</var> (<code>--installed</code>|<var>taps</var>)</dt><dd><p>Print a JSON representation of <var>taps</var>. Currently the only accepted value
<dt><code>tap-pin</code><var>tap</var></dt><dd><p>Pin <var>tap</var>, prioritizing its formulae over core when formula names are supplied
by the user. See also <code>tap-unpin</code>.</p></dd>
<dt><code>tap-unpin</code><var>tap</var></dt><dd><p>Unpin <var>tap</var> so its formulae are no longer prioritized. See also <code>tap-pin</code>.</p></dd>
<dt><code>unlink</code> [<code>--dry-run</code>] <var>formula</var></dt><dd><p>Remove symlinks for <var>formula</var> from the Homebrew prefix. This can be useful
<dt><code>unlinkapps</code> [<code>--local</code>] [<code>--dry-run</code>] [<var>formulae</var>]</dt><dd><p>Remove symlinks created by <code>brew linkapps</code> from <code>/Applications</code>.</p>
<dt><code>unpack</code> [<code>--git</code>|<code>--patch</code>] [<code>--destdir=</code><var>path</var>] <var>formulae</var></dt><dd><p>Unpack the source files for <var>formulae</var> into subdirectories of the current
<dt><code>update</code> [<code>--merge</code>] [<code>--force</code>]</dt><dd><p>Fetch the newest version of Homebrew and all formulae from GitHub using
<dt><code>uses</code> [<code>--installed</code>] [<code>--recursive</code>] [<code>--include-build</code>] [<code>--include-optional</code>] [<code>--skip-recommended</code>] [<code>--devel</code>|<code>--HEAD</code>] <var>formulae</var></dt><dd><p>Show the formulae that specify <var>formulae</var> as a dependency. When given
<dt><code>--repository</code><var>user</var><code>/</code><var>repo</var></dt><dd><p>Display where tap <var>user</var><code>/</code><var>repo</var>'s directory is located.</p></dd>
<dt><code>audit</code> [<code>--strict</code>] [<code>--online</code>] [<code>--new-formula</code>] [<code>--display-cop-names</code>] [<code>--display-filename</code>] [<var>formulae</var>]</dt><dd><p>Check <var>formulae</var> for Homebrew coding style violations. This should be
run before submitting a new formula.</p>
<p>If no <var>formulae</var> are provided, all of them are checked.</p>
<p>If <code>--strict</code> is passed, additional checks are run, including RuboCop
style checks.</p>
<p>If <code>--online</code> is passed, additional slower checks that require a network
connection are run.</p>
<p>If <code>--new-formula</code> is passed, various additional checks are run that check
if a new formula is eligable for Homebrew. This should be used when creating
new formulae and implies <code>--strict</code> and <code>--online</code>.</p>
<p>If <code>--display-cop-names</code> is passed, the RuboCop cop name for each violation
is included in the output.</p>
<p>If <code>--display-filename</code> is passed, every line of output is prefixed with the
name of the file or formula being audited, to make the output easy to grep.</p>
<p><code>audit</code> exits with a non-zero status if any errors are found. This is useful,
for instance, for implementing pre-commit hooks.</p></dd>
<dt><code>bump-formula-pr</code> [<code>--devel</code>] [<code>--dry-run</code>] [<code>--audit</code>|<code>--strict</code>] <code>--tag=</code><var>tag</var><code>--revision=</code><var>revision</var><var>formula</var></dt><dd><p>Creates a pull request to update the formula with a new url or a new tag.</p>
<p>If a <var>url</var> is specified, the <var>sha-256</var> checksum of the new download must
also be specified.</p>
<p>If a <var>tag</var> is specified, the git commit <var>revision</var> corresponding to that
tag must also be specified.</p>
<p>If <code>--devel</code> is passed, bump the development rather than stable version.
The development spec must already exist.</p>
<p>If <code>--dry-run</code> is passed, print what would be done rather than doing it.</p>
<p>If <code>--audit</code> is passed, run <code>brew audit</code> before opening the PR.</p>
<p>If <code>--strict</code> is passed, run <code>brew audit --strict</code> before opening the PR.</p>
<p>Note that this command cannot be used to transition a formula from a
url-and-sha256 style specification into a tag-and-revision style
specification, nor vice versa. It must use whichever style specification
the preexisting formula already uses.</p></dd>
<dt><code>create</code><var>URL</var> [<code>--autotools</code>|<code>--cmake</code>] [<code>--no-fetch</code>] [<code>--set-name</code><var>name</var>] [<code>--set-version</code><var>version</var>] [<code>--tap</code><var>user</var><code>/</code><var>repo</var>]</dt><dd><p>Generate a formula for the downloadable file at <var>URL</var> and open it in the editor.
Homebrew will attempt to automatically derive the formula name
and version, but if it fails, you'll have to make your own template. The <code>wget</code>
formula serves as a simple example. For the complete API have a look at</p>
<p>If <code>--autotools</code> is passed, create a basic template for an Autotools-style build.
If <code>--cmake</code> is passed, create a basic template for a CMake-style build.</p>
<p>If <code>--no-fetch</code> is passed, Homebrew will not download <var>URL</var> to the cache and
will thus not add the SHA256 to the formula for you.</p>
<p>The options <code>--set-name</code> and <code>--set-version</code> each take an argument and allow
you to explicitly set the name and version of the package you are creating.</p>
<p>The option <code>--tap</code> takes a tap as its argument and generates the formula in
the specified tap.</p></dd>
<dtclass="flush"><code>edit</code></dt><dd><p>Open all of Homebrew for editing.</p></dd>
<dt><code>edit</code><var>formula</var></dt><dd><p>Open <var>formula</var> in the editor.</p></dd>
<dt><code>linkage</code> [<code>--test</code>] [<code>--reverse</code>] <var>formula-name</var></dt><dd><p>Checks the library links of an installed formula.</p>
<p>Only works on installed formulae. An error is raised if it is run on
uninstalled formulae.</p>
<p>If <code>--test</code> is passed, only display missing libraries and exit with a
non-zero exit code if any missing libraries were found.</p>
<p>If <code>--reverse</code> is passed, print the dylib followed by the binaries
which link to it for each library the keg references.</p></dd>
<pre><code>Gets a patch from a GitHub commit or pull request and applies it to Homebrew.
Optionally, installs the formulae changed by the patch.
Each <patch-source> may be one of:
* The ID number of a PR (Pull Request) in the homebrew/core GitHub
repository
* The URL of a PR on GitHub, using either the web page or API URL
formats. In this form, the PR may be on Homebrew/brew,
Homebrew/homebrew-core or any tap.
* The URL of a commit on GitHub
* A "http://bot.brew.sh/job/..." string specifying a testing job ID
</code></pre>
<p> If <code>--bottle</code> was passed, handle bottles, pulling the bottle-update
commit and publishing files on Bintray.
If <code>--bump</code> was passed, for one-formula PRs, automatically reword
commit message to our preferred format.
If <code>--clean</code> was passed, do not rewrite or otherwise modify the
commits found in the pulled PR.
If <code>--ignore-whitespace</code> was passed, silently ignore whitespace
discrepancies when applying diffs.
If <code>--resolve</code> was passed, when a patch fails to apply, leave in
progress and allow user to
resolve, instead of aborting.
If <code>--branch-okay</code> was passed, do not warn if pulling to a branch
besides master (useful for testing).
If <code>--no-pbcopy</code> was passed, do not copy anything to the system
If <code>--no-publish</code> was passed, do not publish bottles to Bintray.</p>
<dl>
<dt><code>tap_readme</code> [<code>-v</code>] <var>name</var></dt><dd><p>Generate the README.md file for a new tap.</p></dd>
<dt><code>test</code> [<code>--devel</code>|<code>--HEAD</code>] [<code>--debug</code>] [<code>--keep-tmp</code>] <var>formula</var></dt><dd><p>A few formulae provide a test method. <code>brew test</code><var>formula</var> runs this
test method. There is no standard output or return code, but it should
generally indicate to the user if something is wrong with the installed
formula.</p>
<p>To test the development or head version of a formula, use <code>--devel</code> or
<code>--HEAD</code>.</p>
<p>If <code>--debug</code> is passed and the test fails, an interactive debugger will be
launched with access to IRB or a shell inside the temporary test directory.</p>
<p>If <code>--keep-tmp</code> is passed, the temporary files created for the test are
not deleted.</p>
<p>Example: <code>brew install jruby && brew test jruby</code></p></dd>
<dt><code>tests</code> [<code>-v</code>] [<code>--coverage</code>] [<code>--generic</code>] [<code>--no-compat</code>] [<code>--only=</code><test_script/test_method>] [<code>--seed</code><var>seed</var>] [<code>--trace</code>] [<code>--online</code>] [<code>--official-cmd-taps</code>]</dt><dd><p>Run Homebrew's unit and integration tests.</p></dd>
<dt><code>update-test</code> [<code>--commit=<sha1></code>] [<code>--before=<date></code>] [<code>--keep-tmp</code>]</dt><dd><p>Runs a test of <code>brew update</code> with a new repository clone.</p>
<p>If no arguments are passed, use <code>origin/master</code> as the start commit.</p>
<p>If <code>--commit=<sha1></code> is passed, use <code><sha1></code> as the start commit.</p>
<p>If <code>--before=<date></code> is passed, use the commit at <code><date></code> as the
start commit.</p>
<p>If <code>--keep-tmp</code> is passed, retain the temporary directory containing
<dt><code>AWS_ACCESS_KEY_ID</code>, <code>AWS_SECRET_ACCESS_KEY</code></dt><dd><p>When using the <code>S3</code> download strategy, Homebrew will look in
<dtclass="flush"><code>EDITOR</code></dt><dd><p>If set, and <code>HOMEBREW_EDITOR</code> and <code>VISUAL</code> are not, use <code>EDITOR</code> as the text editor.</p></dd>
<dtclass="flush"><code>GIT</code></dt><dd><p>When using Git, Homebrew will use <code>GIT</code> if set,
<dt><code>HOMEBREW_ARTIFACT_DOMAIN</code></dt><dd><p>If set, instructs Homebrew to use the given URL as a download mirror for bottles and binaries.</p></dd>
<dt><code>HOMEBREW_NO_ANALYTICS</code></dt><dd><p>If set, Homebrew will not send analytics. See: <ahref="https://github.com/Homebrew/brew/blob/master/share/doc/homebrew/Analytics.md#analytics"data-bare-link="true">https://github.com/Homebrew/brew/blob/master/share/doc/homebrew/Analytics.md#analytics</a></p></dd>
<p>Homebrew's current maintainers are Misty De Meo, Andrew Janke, Xu Cheng, Tomasz Pajor, Mike McQuaid, Baptiste Fontaine, Brett Koonce, ilovezfs, Martin Afanasjew, Dominyk Tiller, Tim Smith and Alex Dunn.</p>