Automic VaultAutomic Vault

brew

Install bfg with Homebrew, MacPorts, scoop

Remove large files or passwords from Git history like git-filter-branch. Version 1.15.0 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install bfg

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install bfg

MacPorts ports tree · java/bfg/Portfile · source: api.github.com

Windows

Scoopverified · 92%
scoop install main/bfg

Scoop official bucket manifest trees · bucket/bfg.json · source: api.github.com

overview

Package summary

Remove large files or passwords from Git history like git-filter-branch

Commands and aliases

  • bfg

history

Project history and usage

BFG Repo-Cleaner is a Scala/JVM command-line tool for removing large files, passwords, credentials, and other unwanted blobs from Git history. Its official positioning is as a simpler and much faster alternative to git-filter-branch for cleansing bad data from repositories.

Project history

The official GitHub repository was created in December 2012. BFG's README and project site center on two core repository-cleaning jobs: stripping large blobs and replacing sensitive text across history.

Release history shows BFG maturing through the 2010s, including Git LFS support in v1.12.5 in 2015, Java 8 and Scala 2.12 support in v1.13.0 in 2018, Scala 2.13 in v1.14.0 in 2021, and v1.15.0 in January 2025.

Adoption history

BFG became widely known because git-filter-branch was powerful but slow and difficult to use for common cleanup jobs. BFG narrowed the problem to the operations teams most often needed after accidentally committing giant artifacts or secrets, then packaged that workflow as a standalone executable.

The input records Homebrew, MacPorts, and Scoop packaging, matching BFG's cross-platform appeal: it is a Java-based tool that can be used from macOS, Linux, or Windows when a Git repository needs emergency cleanup.

How it is used

Typical usage is on a mirror clone or bare repository, with commands such as stripping blobs above a size threshold or replacing text listed in a file. After BFG rewrites the repository objects, users still need the normal Git cleanup and force-push workflow expected after history rewriting.

Because it rewrites repository history, BFG is used deliberately: it is most valuable when a repository has already leaked bulky files or secrets and the team needs a repeatable cleanup tool rather than manual filter-branch scripting.

Why package nerds care

BFG is package-nerd significant because it turned one of Git administration's ugliest chores into a memorable, packaged CLI. Before git-filter-repo became the modern upstream-recommended tool, BFG was the package many developers reached for when Git history got polluted.

Its design is a good example of a focused package beating a built-in general-purpose tool for a painful workflow: fewer knobs, better defaults for common cleanup cases, and performance claims strong enough to become part of the project's identity.

Timeline

  • 2012: Official repository created in December.
  • 2015: v1.12.5 added Git LFS support.
  • 2018: v1.13.0 moved to Scala 2.12 and Java 8.
  • 2021: v1.14.0 updated to Scala 2.13.
  • 2025: v1.15.0 released in January.

Related projects

  • Related projects include git-filter-branch, git-filter-repo, git lfs migrate, and secret-scanning tools such as Gitleaks or TruffleHog that may detect the problem before BFG is needed.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 1 platform targets.
  • Installs with 1 runtime dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
bfgcliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version1.15.0
manager updated
local dataok
upstreamnot checked
latest detectednot detected

https://rtyley.github.io/bfg-repo-cleaner/

install metadata

Package metadata

Package keybrew:bfg
Version1.15.0
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/bfg
Homepagehttps://rtyley.github.io/bfg-repo-cleaner/
Repositoryhttps://github.com/rtyley/bfg-repo-cleaner
Upstream docshttps://rtyley.github.io/bfg-repo-cleaner
LicenseGPL-3.0-or-later
Source archivehttps://search.maven.org/remotecontent?filepath=com/madgag/bfg/1.15.0/bfg-1.15.0.jar
Dependenciesopenjdk
Bottleavailable (on all)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namebfg
Version Scheme0
Revision0
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

MacPorts95%

bfg

sudo port install bfg
  • normalized package name match
  • Matched by: Bfg
MacPorts ports tree · api.github.com · MacPorts ports tree: java/bfg/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
Scoop95%

main/bfg

scoop install main/bfg
  • normalized package name match
  • Matched by: Bfg
Scoop official bucket manifest trees · api.github.com · Scoop official bucket manifest trees: bucket/bfg.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment