Automic VaultAutomic Vault

brew

Install git-filter-repo with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman, scoop, zypper

Quickly rewrite git repository history. Version 2.47.0 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install git-filter-repo

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install git-filter-repo

MacPorts ports tree · devel/git-filter-repo/Portfile · source: api.github.com

Linux

Alpine Linux apkverified · 92%
sudo apk add git-filter-repo

Alpine Linux edge package indexes · git-filter-repo · source: dl-cdn.alpinelinux.org

Debian aptverified · 92%
sudo apt install git-filter-repo

Debian stable package indexes · git-filter-repo · source: deb.debian.org

Fedora dnfverified · 92%
sudo dnf install git-filter-repo

Fedora Rawhide package metadata · git-filter-repo · source: dl.fedoraproject.org

Nixverified · 92%
nix profile install nixpkgs#git-filter-repo

nixpkgs package indexes · git-filter-repo · source: raw.githubusercontent.com

Arch Linux pacmanverified · 92%
sudo pacman -S git-filter-repo

Arch Linux sync databases · git-filter-repo · source: geo.mirror.pkgbuild.com

openSUSE zypperverified · 92%
sudo zypper install git-filter-repo

openSUSE Tumbleweed package metadata · git-filter-repo · source: download.opensuse.org

Windows

Scoopverified · 92%
scoop install main/git-filter-repo

Scoop official bucket manifest trees · bucket/git-filter-repo.json · source: api.github.com

overview

Package summary

Quickly rewrite git repository history

Commands and aliases

  • git-filter-repo

history

Project history and usage

git-filter-repo is a Python-based Git history rewriting tool by Elijah Newren, positioned as a safer and faster successor to git filter-branch for repository cleanup, extraction, path rewriting, tag rewriting, and sensitive-data removal.

Project history

The project grew out of Newren's work on Git fast-export and fast-import based history filtering. The public repository carries imported history back to a 2009 initial import, while the standalone GitHub project was established in 2018 and began tagging releases alongside Git 2.23-era packaging. Its README frames the tool as a response to shortcomings in git filter-branch and BFG Repo Cleaner: poor performance, confusing multi-step cleanup, limited rewrite types, and fragile shell-based filtering.

Adoption history

Adoption was accelerated by the Git project's own filter-branch documentation, which warns against filter-branch for many use cases and points users toward git-filter-repo. The project became a standard answer for history-rewrite work because it combines a command-line interface, a Python library for custom filters, conversion guides from filter-branch and BFG, and packaging in common Unix package ecosystems.

How it is used

Practitioners use git-filter-repo for destructive repository rewrites: removing large blobs or secrets, extracting a subdirectory with history, moving a project into a subdirectory before a merge, renaming tags, rewriting author data with mailmap information, or replacing text across historical blobs. The tool deliberately encourages use from a fresh clone and performs cleanup steps such as pruning old history and repacking so users do not mix rewritten and original refs.

Why package nerds care

For package maintainers and release engineers, git-filter-repo matters because it replaced a folklore-heavy set of filter-branch recipes with a single-file script, a documented manual, and reproducible transformations. Its existence also fed changes back into core Git fast-export and fast-import behavior, making it part of the broader Git tooling ecosystem rather than only a cleanup script.

Timeline

  • 2009: Imported predecessor history begins with an initial filter-repo commit.
  • 2018: The standalone GitHub repository was created.
  • 2019: Git Rev News published Newren's introduction to git-filter-repo.
  • Git 2.23 era: Early tagged releases appeared as the tool entered package-manager distribution.

Related projects

  • git-filter-repo is related to git filter-branch, BFG Repo Cleaner, git fast-export, git fast-import, and the filter-lamely and bfg-ish demos shipped in its contrib tree.

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.

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
git-filter-repocliglobal 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 version2.47.0
manager updated
local dataok
upstreamnot checked
latest detectednot detected

https://github.com/newren/git-filter-repo

install metadata

Package metadata

Package keybrew:git-filter-repo
Version2.47.0
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/git-filter-repo
Homepagehttps://github.com/newren/git-filter-repo
Repositoryhttps://github.com/newren/git-filter-repo
Upstream docshttps://github.com/newren/git-filter-repo#readme
LicenseMIT
Source archivehttps://github.com/newren/git-filter-repo/releases/download/v2.47.0/git-filter-repo-2.47.0.tar.xz
Uses from macOSgit, python
Bottleavailable (on all)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namegit-filter-repo
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.

Debian apt95%

git-filter-repo 2.47.0-2

Quickly rewrite git repository history

https://github.com/newren/git-filter-repo

sudo apt install git-filter-repo
  • Section: vcs
  • Architecture: all
  • 2 dependencies
  • 1 optional deps
  • normalized package name match
  • Matched by: Git Filter Repo
Debian stable package indexes · deb.debian.org · Debian stable package indexes: git-filter-repo from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Nix95%

git-filter-repo

nix profile install nixpkgs#git-filter-repo
  • normalized package name match
  • Matched by: Git Filter Repo
nixpkgs package indexes · raw.githubusercontent.com · nixpkgs package indexes: git-filter-repo from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
Ubuntu apt95%

git-filter-repo 2.38.0-2

Quickly rewrite git repository history

https://github.com/newren/git-filter-repo

sudo apt install git-filter-repo
  • Section: universe/vcs
  • Architecture: all
  • 2 dependencies
  • 1 optional deps
  • normalized package name match
  • Matched by: Git Filter Repo
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: git-filter-repo from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz
apk95%

git-filter-repo 2.47.0-r2

quickly rewrite git repository history

https://github.com/newren/git-filter-repo

sudo apk add git-filter-repo
  • License: MIT
  • Architecture: x86_64
  • Source Package: git-filter-repo
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Git Filter Repo
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: git-filter-repo from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

git-filter-repo-doc 2.47.0-r2

quickly rewrite git repository history (documentation)

https://github.com/newren/git-filter-repo

sudo apk add git-filter-repo-doc
  • License: MIT
  • Architecture: x86_64
  • Source Package: git-filter-repo
  • normalized package name match
  • Matched by: Git Filter Repo
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: git-filter-repo-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
dnf95%

git-filter-repo 2.47.0-10.fc45

Quickly rewrite git repository history (git-filter-branch replacement)

https://github.com/newren/git-filter-repo

sudo dnf install git-filter-repo
  • License: GPL-2.0-only OR MIT
  • Category: Development/Tools/Version Control
  • Architecture: noarch
  • Source Package: git-filter-repo
  • 3 dependencies
  • 3 provides
  • normalized package name match
  • Matched by: Git Filter Repo
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: git-filter-repo from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
pacman95%

git-filter-repo 2.47.0-3

Quickly rewrite git repository history (filter-branch replacement)

https://github.com/newren/git-filter-repo

sudo pacman -S git-filter-repo
  • License: MIT OR GLP-2.0-or-later
  • Architecture: any
  • 2 dependencies
  • normalized package name match
  • Matched by: Git Filter Repo
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: git-filter-repo from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz
zypper95%

git-filter-repo 2.47.0-2.3

Quickly rewrite git repository history (git-filter-branch replacement)

https://github.com/newren/git-filter-repo

sudo zypper install git-filter-repo
  • License: GPL-2.0-only OR MIT
  • Category: Development/Tools/Version Control
  • Architecture: noarch
  • Source Package: git-filter-repo
  • 3 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Git Filter Repo
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: git-filter-repo from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
MacPorts95%

git-filter-repo

sudo port install git-filter-repo
  • normalized package name match
  • Matched by: Git Filter Repo
MacPorts ports tree · api.github.com · MacPorts ports tree: devel/git-filter-repo/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
Scoop95%

main/git-filter-repo

scoop install main/git-filter-repo
  • normalized package name match
  • Matched by: Git Filter Repo
Scoop official bucket manifest trees · api.github.com · Scoop official bucket manifest trees: bucket/git-filter-repo.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