Zoeken…


Invoering

Als u gevoelige gegevens, zoals een wachtwoord of SSH-sleutel in een Git-repository vastlegt, kunt u deze uit de geschiedenis verwijderen. Om ongewenste bestanden volledig uit de geschiedenis van een repository te verwijderen, kunt u de opdracht git filter-branch of de BFG Repo-Cleaner gebruiken.

Opmerkingen

  1. Vertel uw medewerkers om alle vertakkingen die ze hebben gemaakt op basis van uw oude (besmette) repositorygeschiedenis te rebasen, niet samen te voegen. Eén merge-commit kan de gehele geschiedenis van de besmette geschiedenis die je net hebt opgezegd, opnieuw invoeren.

  2. Nadat enige tijd is verstreken en je ervan overtuigd bent dat git filter-branch geen onbedoelde bijwerkingen had, kun je alle objecten in je lokale repository dwingen om te worden verwijderd en afval verzameld met de volgende opdrachten (met Git 1.8.5 of nieuwer):

    git for-each-ref --format = 'delete% (refname)' refs / original | git update-ref --stdin

    git reflog verlopen --expire = nu --all

    git gc --prune = nu

Gebruik filtertak

git filter-branch --force --index-filter \
'git rm --cached --ignore-unmatch PATH-TO-YOUR-FILE-WITH-SENSITIVE-DATA' \
--prune-empty --tag-name-filter cat -- --all

Voeg uw bestand met gevoelige gegevens toe aan .gitignore om ervoor te zorgen dat u het niet per ongeluk opnieuw vastlegt.

echo "YOUR-FILE-WITH-SENSITIVE-DATA" >> .gitignore
git add .gitignore
git commit -m "Add YOUR-FILE-WITH-SENSITIVE-DATA to .gitignore"

Push je lokale repo naar GitHub

git push origin --force --all

Om het gevoelige bestand uit je getagde releases te verwijderen, moet je ook geforceerd pushen tegen je Git-tags:

git push origin --force --tags

De BFG Repo Cleaner gebruiken

BFG Repo cleaner is een alternatief voor git filter-branch. Het kan worden gebruikt om gevoelige gegevens of grote bestanden te verwijderen die verkeerd zijn gepleegd, zoals binaire bestanden die zijn gecompileerd vanuit de bron. Het is geschreven in Scala.

Projectwebsite: BFG Repo Cleaner

Voorwaarden

De Java Runtime Environment (Java 7 of hoger - BFG v1.12.3 was de laatste versie die Java 6 ondersteunde). De Scala-bibliotheek en alle andere afhankelijkheden worden in de downloadbare pot gevouwen.

Verwijder bestanden met gevoelige gegevens

bfg --delete-files YOUR-FILE-WITH-SENSITIVE-DATA


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow