Przeczyszczanie danych repozytorium

Ukończone

Chociaż jedną z zalet usługi Git jest wydajne przechowywanie długich historii dla repozytoriów, czasami trzeba przeczyścić dane.

Najbardziej typowe sytuacje to, w których chcesz:

  • Znacznie zmniejsz rozmiar repozytorium, usuwając historię.
  • Usuń duży plik, który został przypadkowo przekazany.
  • Usuń poufny plik, który nie powinien zostać przekazany.

W przypadku zatwierdzania poufnych danych (na przykład hasła, klucza) w usłudze Git można je usunąć z historii. Często używane są dwa narzędzia:

narzędzie git filter-repo

Repozytorium git filter-repo to narzędzie do ponownego zapisywania historii.

Jego podstawowe repozytorium filter-repo zawiera bibliotekę do tworzenia narzędzi do ponownego zapisywania historii. Użytkownicy z wyspecjalizowanymi potrzebami mogą szybko tworzyć całkowicie nowe narzędzia do ponownego zapisywania historii.

Uwaga

Więcej szczegółów znajduje się w repozytorium git-filter-repo.

BFG Repo-Cleaner

BFG Repo-Cleaner to powszechnie używane narzędzie typu open source do usuwania lub naprawiania zawartości w repozytoriach. Łatwiej jest użyć polecenia git filter-branch. W przypadku pojedynczego pliku lub zestawu plików użyj opcji --delete-files :

$ bfg --delete-files file_I_should_not_have_committed

Poniższy powłoka bash pokazuje, jak znaleźć wszystkie miejsca, w których w repozytorium istnieje plik o nazwie passwords.txt. Ponadto aby zastąpić cały tekst, możesz wykonać opcję --replace-text :

$ bfg --replace-text passwords.txt

Aby uzyskać więcej informacji, zobacz:

Szybko zapisz historię repozytorium git.

Usuwanie plików z usługi Git Large File Storage.

Usuwanie poufnych danych z repozytorium.

Narzędzie do czyszczenia repozytorium BFG.