Files
brew/docs
Mike McQuaid a48f3f21ac Allow Keychain tokens for Git downloads
- Sandboxed private source downloads cannot read tokens stored by `gh`
  in the macOS Keychain. Allowing Keychain access would also expose
  unrelated credentials, so retain the existing sandbox restrictions.
- Reuse `GitHub::API.github_cli_token` outside the sandbox for built-in
  Git strategies when the rewritten URL uses HTTPS on `github.com`
  and a credential helper is configured. Bound the lookup and keep
  configured helpers inside the sandbox, including wrappers of `gh`.
- Pass the result as `GH_TOKEN` only to top-level clones, fetches and
  remote branch discovery. Register it for log redaction without
  setting the parent environment or populating the API credential
  cache, avoiding exposure through formula environment variables.
- Disable implicit submodule recursion even when Git configuration
  enables it, so child downloads cannot inherit the top-level token.
  Fetch submodules separately without it. Checkouts, resets and local
  inspections also receive no injected token. Share the recursion flag,
  working-directory selection and timeout conversion across callers.
- Explain why tap operations can use Keychain helpers while source
  downloads cannot, and document the remaining authentication limits
  for private submodules and partial clones that fetch during checkout.

Fixes #24339
2026-10-23 17:41:03 +01:00
..
2026-07-26 19:48:28 +01:00
2026-07-26 19:48:28 +01:00
2025-05-22 12:17:52 -04:00
2024-06-13 09:55:31 +01:00
2021-12-02 22:58:31 -05:00
2024-06-14 12:22:02 +01:00
2025-10-15 17:39:14 +01:00
2017-01-04 10:53:21 +00:00
2026-10-23 17:41:03 +01:00
2026-06-08 20:35:04 +01:00
2025-02-08 14:43:49 +00:00
2026-05-09 08:58:42 -04:00
2026-06-08 20:35:04 +01:00
2017-07-02 15:09:26 +01:00

last_review_date
last_review_date
2026-06-08

Homebrew Documentation

These are the source files for the Homebrew documentation site.

A GitHub Action is run to validate each change before the site is deployed to GitHub Pages.

Usage

Open https://docs.brew.sh in your web browser.

To instead generate the site locally, available on http://localhost:4000, run:

cd $(brew --repository)/docs
brew bundle --install exec -- bundle install
bin/jekyll serve