Machen Sie einen Git-Push auf Github rückgängig

Lesezeit: 2 Minuten

Benutzer-Avatar
Arkan

Ich habe einen Fehler gemacht …. und ich weiß nicht, wie ich ihn beheben soll.

Ich erkläre das Problem.

Ich habe an meinem Projekt gearbeitet und einen ersten Commit gemacht. In diesem Commit wurden 2 große nutzlose Dateien hinzugefügt … Ich wollte diese Dateien nicht, also habe ich a

git rm file

Dann wieder zugesagt. Und ich bin dumm, weil ich zu github gepusht habe hehehe :).

Ich denke du hast das Problem erkannt…

Wie kann ich diese Dateien endgültig aus meinen lokalen und Github-Repositories (insbesondere Github …) entfernen?

Ich habe Hilfe im Internet gefunden, aber ich möchte nicht mein gesamtes Repository zerstören.

Vielen Dank

Wenn sonst niemand gezogen hat, sollten Sie Ihren lokalen Zweig einfach wieder so zurückbringen, wie Sie es möchten (wahrscheinlich entweder durch Zurücksetzen auf eine frühere Position oder durch Ausführen einer interaktiven Rebase, um den unerwünschten Commit zu entfernen), und drücken Sie dann erneut auf github mit dem -f (erzwingen) Option:

git push -f <remote-name> <branch-name>

Wenn andere Leute gezogen haben, gilt der übliche Rat: Lesen Sie das Erholung von Upstream-Rebase Abschnitt der git-rebase-Manpage, um zu sehen, was Sie mit den anderen machen, bevor Sie Ihr erzwungenes Update durchführen.

Wenn Sie den letzten Commit mit neuen Dateien entfernen (nicht wiederherstellen, entfernen) wollten, sollten Sie meiner Meinung nach Folgendes tun:

git reset --soft "HEAD^"

Wie auch immer, da Sie es bereits auf GitHub verschoben haben, können Sie es nicht entfernen, ohne das Git-Repo neu zu erstellen. So funktioniert es, Sie können jeden Commit rückgängig machen, zum Beispiel Commit, bei dem Sie diese 2 großen Dateien gelöscht haben. Da es sich um ein neues Repo handelt und Sie über das anfängliche Commit sprechen, erscheint mir die Neuerstellung des Repos als beste Idee.

  • “Sie können es nicht entfernen, ohne das Git-Repo neu zu erstellen” äh, ja, das können Sie. Es kann andere Leute verärgern, wenn sie gezogen haben, aber Sie können es tun.

    – Kaskabel

    12. September 2010 um 1:19 Uhr

  • Ich hatte keine Ahnung, dass Sie es aus dem Remote-Repo entfernen können, danke Kumpel.

    – Piotr Karbowski

    12. September 2010 um 11:14 Uhr

  • Gerade git reset HEAD^ ist in Ordnung; Der gemischte Reset setzt auch den Staging-Bereich zurück, aber (im Gegensatz zu --hard) lässt das Arbeitsverzeichnis intakt. Von dort, git add -p ist oft der nächste Schritt.

    – Kos

    13. Februar 2013 um 10:13 Uhr

1143990cookie-checkMachen Sie einen Git-Push auf Github rückgängig

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy