lima-city: Webhosting, Domains und Cloud
4 Pluspunkte 0 Minuspunkte
Ich habe unabsichtlich einen Commit gepusht indem sensible Daten eingetragen waren die ich jetzt wieder aus der History raus bekommen muss. Wie kann ich das am besten machen ohne das ganze Projekt neu aufzusetzen?
von  
Git Rebase könnte sein, wonach du suchst. https://git-scm.com/docs/git-rebase

1 Antwort

3 Pluspunkte 0 Minuspunkte

Du könntest "git filter-branch" verwenden, um Daten aus der Commit History zu entfernen. Erstelle davor unbedingt ein Backup des gesamten Projekt!

git filter-branch --tree-filter "rm -f explicit_file.cpp" -- --all

--tree-filter führt den angegebenen Befehl auf dem Arbeitsverzeichnis jedes Commits aus. In diesem Fall wird der Befehl "rm -f explicit_file.cpp" ausgeführt, um die Datei aus dem Arbeitsverzeichnis jedes Commits zu entfernen.

Dabei werden alle Verweise auf die Datei "explicit_file.cpp" aus der Commit-History entfernt. Auch die Datei selbst, du musst sie also danach neu erstellen bzw. aktualisieren.

Wichtig ist, alle Beteiligten darüber zu informieren dass sie ihre lokalen Kopien nach dem erzwungenen Push aktualisieren.

von (718 Punkte)  
Diese Community basiert auf dem Prinzip der Selbstregulierung. Beiträge werden von Nutzern erstellt, bewertet und verbessert – ganz ohne zentrale Moderation.

Wer hilfreiche Fragen stellt oder gute Antworten gibt, sammelt Punkte. Mit steigender Punktzahl erhalten Mitglieder automatisch mehr Rechte, zum Beispiel

  • Kommentare verfassen
  • Fragen und Antworten bewerten
  • Themen von Fragen bearbeiten
  • Fragen, Antworten und Kommentare bearbeiten
  • Inhalte ausblenden

So entsteht eine Plattform, auf der sich Qualität durchsetzt – getragen von einer engagierten Gemeinschaft.

2.3k Fragen

2.8k Antworten

261 Kommentare

13 Nutzer