Menu
Coddy logo textTech

Einen Branch zurücksetzen

Teil des Abschnitts Versionsverwaltung der Terminal-Journey von Coddy. Lektion 44 von 58.

git reset verschiebt den Zeiger des aktuellen Branches auf einen anderen Commit. Am häufigsten wird der Befehl verwendet, um kürzlich erstellte Commits rückgängig zu machen, die du noch nicht geteilt hast.

git reset --hard HEAD~1

Dadurch wird main um einen Commit zurückgesetzt und das Arbeitsverzeichnis überschrieben, sodass es übereinstimmt. Der Commit, den du übersprungen hast, ist von deinem Branch aus nicht mehr erreichbar (Git bewahrt ihn eine Weile auf, falls du deine Meinung änderst, aber rechne damit, dass er verschwindet).

Drei Arten von Zurücksetzungen existieren:

  • --soft: den Branch-Pointer verschieben; gestagete Änderungen behalten
  • --mixed (Standard): den Pointer verschieben; Änderungen aus dem Staging-Bereich entfernen, aber Arbeitsdateien behalten
  • --hard: den Pointer verschieben; auch Änderungen in den Arbeitsdateien verwerfen

--hard ist die destruktivste Form. Es eignet sich hervorragend zum Bereinigen lokaler Fehler, aber verwenden Sie es niemals für Commits, die andere Personen bereits gepullt haben.

challenge icon

Aufgabe

Mittel

Der Ordner enthält doc.md. Initialisiere das Repository und erstelle nacheinander drei Commits:

  1. Füge doc.md mit der Nachricht Add doc hinzu.
  2. Hänge second an doc.md an und führe einen Commit mit der Nachricht Second draft durch.
  3. Hänge third an doc.md an und führe einen Commit mit der Nachricht Third draft durch.

Setze den Branch mit einem Hard-Reset auf den allerersten Commit zurück, und zwar mit HEAD~2. Gib den Inhalt von doc.md aus.

Probier es selbst

Terminal
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Versionsverwaltung

Übe selbstständig: Terminal-Playground