Von Gast (nicht überprüft) , 29 April 2026

Warum filter-repo

git filter-repo ist der moderne Ersatz fur das veraltete git filter-branch. Drastisch schneller — manchmal 100x — sicherer per Default und bietet Hochlevel-Operationen, die Historie-Chirurgie tatsachlich braucht.

Installation

macOS: brew install git-filter-repo. Debian/Ubuntu: apt install git-filter-repo.

Datei aus gesamter Historie entfernen

git filter-repo --path secrets.env --invert-paths

Unterverzeichnis als neues Repo extrahieren

git clone --no-local original/ extracted/
cd extracted
git filter-repo --subdirectory-filter packages/foo

Pfade umbenennen

git filter-repo --path-rename old/dir/:new/dir/

Autor-E-Mails aktualisieren

cat > mailmap.txt <<'EOF'
Jane Doe <[email protected]> <[email protected]>
EOF
git filter-repo --mailmap mailmap.txt

Sicherheitsfeatures

git filter-repo --force

Haufige Fehler

Auf dem einzigen Klon mit --force und ohne Backup ausfuhren.

Performance

filter-repo nutzt git fast-export/fast-import, daher die Geschwindigkeit.