Git – Versehentlich in den Upstream verschoben statt in meinen Branch

Lesezeit: 2 Minuten

Ich bin neu bei git. Ich wollte meine Daten in meinen Zweig schieben, aber stattdessen habe ich sie in den Upstream/Master-Zweig geschoben. Ich möchte diesen Push rückgängig machen. Gibt es irgendeinen Weg?

Jede Hilfe ist willkommen.

  • Ich denke, Sie wollten damit sagen, dass Sie Ihre Daten auf Ihren Fork schieben wollten, nicht auf einen Zweig.

    – Joe Phillips

    5. Mai 2016 um 21:31 Uhr

  • Mögliches Duplikat von Wie machen Sie den letzten Commit rückgängig?

    – Jordan Parmer

    5. Mai 2016 um 21:38 Uhr

Kehren Sie lokal zurück und schieben Sie Ihre Rückkehr

git revert <commit_id>
git push upstream/master

Dies ist besser als das Löschen Ihres Verlaufs, wenn Sie mit einem Team am Upstream-Repository zusammenarbeiten. Wenn Sie einen Hard-Reset durchführen und Push erzwingen, könnten Sie am Ende andere Commits von anderen Personen entfernen. Es ist besser, Ihre Änderungen einfach rückgängig zu machen und dies im Teamverlauf anzuzeigen.

Benutzeravatar von Jordan Parmer
Jordan Parmer

git checkout -b myfeaturebranch
git checkout master
git reset --hard HEAD~1
git push --force

Dies bewirkt Folgendes:

  1. Erstellt einen neuen lokalen Zweig mit den von Ihnen vorgenommenen Commits
  2. Geht zurück zum Master-Zweig
  3. Setzt den Commit-Zeiger um einen Commit zurück
  4. Pusht den Reset, der den Commit von der Fernbedienung entfernt

Die Gefahr hier besteht darin, dass diese Commits verloren gehen, wenn jemand anderes vom Master gezogen wird. In diesem Fall möchten Sie verwenden revert anstatt reset Dadurch wird das Zurücksetzen als Teil des Commit-Verlaufs aufgezeichnet.

git checkout -b myfeaturebranch
git checkout master
git revert HEAD~1
git push

  • Dies ist nicht gut für Teamprojekte, da Sie am Ende Commits von anderen Personen entfernen können. Es ist besser, einen rückgängig gemachten Commit zu pushen.

    – ja gesagt

    5. Mai 2016 um 21:32 Uhr

  • @YasserElsayed Einverstanden. Ich habe das als Kommentar hinzugefügt.

    – Jordan Parmer

    5. Mai 2016 um 21:32 Uhr


  • Ich habe einen Fehler erhalten: Commit X ist eine Zusammenführung, aber es wurde keine Option -m angegeben. fatal: Zurücksetzen fehlgeschlagen

    – mononoke83

    9. März 2021 um 7:48 Uhr

  • @mononoke83, ich auch! Wir hatten Glück, dass wir den Fehler bekommen haben, weil wir einen falschen Commit rückgängig gemacht haben! Lange Rede kurzer Sinn, am besten verwenden Sie: git revert <commit_id> anstatt git revert HEAD~1

    – Positiv Navid

    20. Juli 2021 um 0:45 Uhr

Ich stehe vor dem gleichen Szenario für mich!

  1. git zurücksetzen
  2. unstaged die ausgewählten Dateien aus dem Quellbaum oder anderen
  3. git reset –soft HEAD~1

Dadurch werden die Master-Änderungen in Tree in Ihren Tools zurückgesetzt.

1439900cookie-checkGit – Versehentlich in den Upstream verschoben statt in meinen Branch

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

Privacy policy