Bereinigen von Repositorydaten

Abgeschlossen

Einer der Vorteile von Git ist die Möglichkeit, lange Verläufe für Repositorys effizient zu speichern, aber es gibt auch Zeiten, in denen Daten endgültig gelöscht werden müssen.

Die häufigsten Situationen sind die, in denen Sie Folgendes erreichen möchten:

  • Erhebliches Verringern der Größe eines Repositorys durch Entfernen des Verlaufs.
  • Entfernen einer großen Datei, die versehentlich hochgeladen wurde.
  • Entfernen einer vertraulichen Datei, die nicht hochgeladen werden sollte.

Wenn Sie vertrauliche Daten (z. B. Kennwort, Schlüssel) an Git committen, können diese aus dem Verlauf entfernt werden. Zwei Tools werden häufig verwendet:

Das Tool „git filter-repo“

Mithilfe des Tools „git filter-repo“ lässt sich der Repositoryverlauf umschreiben.

Das Hauptelement „filter-repo“ enthält eine Bibliothek, mit der sich Tools zum Umschreiben des Verlaufs erstellen lassen. Benutzer*innen mit speziellen Anforderungen können im Handumdrehen komplett neue Tools zum Umschreiben des Verlaufs erstellen.

Hinweis

Weitere Informationen finden Sie im Repository git-filter-repo.

BFG Repo-Cleaner

BFG Repo-Cleaner ist ein häufig verwendetes Open-Source-Tool zum Löschen oder „Korrigieren“ von Inhalten in Repositorys. Es ist einfacher zu verwenden als der Befehl „git filter-branch“. Verwenden Sie für eine einzelne Datei oder einen Satz von Dateien die Option --delete-files:

$ bfg --delete-files file_I_should_not_have_committed

Der folgende Bash zeigt die Suche nach allen Speicherorten, an denen eine Datei namens „passwords.txt“ im Repository vorhanden ist. Außerdem können Sie die Option --replace-text ausführen, um den gesamten Text darin zu ersetzen:

$ bfg --replace-text passwords.txt

Weitere Informationen finden Sie unter

Schnelles Umschreiben des git-Repositoryverlaufs.

Entfernen von Dateien aus Git Large File Storage.

Entfernen vertraulicher Daten aus einem Repository.

BFG Repo-Cleaner.