Wie kann man Änderungen in GitHub verwerfen?

Melden
  1. Was bedeutet Änderungen verwerfen in Git?
  2. Unstaged Changes verwerfen
  3. Gestagte Änderungen (staged) zurücknehmen
  4. Alle Änderungen komplett verwerfen
  5. Verwerfen von Änderungen nach einem Commit
  6. Zusammenfassung

Beim Arbeiten mit Git und GitHub kommt es häufig vor, dass man vorgenommenen Änderungen im lokalen Repository wieder rückgängig machen möchte. Dies kann aus unterschiedlichen Gründen notwendig sein, zum Beispiel wenn Änderungen versehentlich gemacht wurden oder wenn man einen sauberen Stand wiederherstellen will. In diesem Artikel erläutern wir ausführlich, wie man Änderungen verwerfen kann und welche Möglichkeiten Git hierfür bietet.

Was bedeutet Änderungen verwerfen in Git?

Wenn man von Änderungen verwerfen spricht, ist meistens gemeint, dass unerwünschte Modifikationen an Dateien zurückgenommen werden, sodass der vorherige Zustand wiederhergestellt wird. Dabei kann es sich entweder um ungestagte Änderungen handeln, um Änderungen, die bereits in die Staging-Area aufgenommen wurden, oder um lokale Commits, die noch nicht gepusht wurden. Je nachdem, in welchem Zustand sich die Änderungen befinden, gibt es unterschiedliche Befehle und Vorgehensweisen.

Unstaged Changes verwerfen

Wenn Sie Änderungen an Dateien vorgenommen haben, diese aber noch nicht gestaged (also noch nicht für den nächsten Commit vorgemerkt) sind, können Sie diese Änderungen verwerfen, indem Sie Git anweisen, die Dateien auf den letzten Commit zurückzusetzen. Dies geschieht mit dem Befehl git checkout -- <Dateiname> oder neuer mit git restore <Dateiname>. Beide Befehle setzen die Datei zurück, sodass die lokalen Änderungen verloren gehen und der Zustand des letzten Commits wiederhergestellt wird. Wenn Sie alle geänderten Dateien zurücksetzen wollen, können Sie entsprechend Platzhalter oder mehrere Dateinamen angeben.

Gestagte Änderungen (staged) zurücknehmen

Wurden Änderungen bereits in die Staging-Area verschoben, man möchte diese aber nicht commiten, kann man sie von dort entfernen, ohne die eigentlichen Änderungen an den Dateien zu verlieren. Der Befehl hierfür lautet git reset <Dateiname>. Dabei werden die Dateien aus der Staging-Area entfernt und wieder als unstaged markiert. Sollten Sie diese Änderungen komplett verwerfen wollen, müssen Sie sie anschließend wie oben beschrieben zurücksetzen.

Alle Änderungen komplett verwerfen

Möchten Sie alle vorgenommenen Änderungen an allen Dateien im Arbeitsverzeichnis verwerfen und auf den Zustand des letzten Commits zurücksetzen, können Sie den Befehl git reset --hard verwenden. Achtung: Dieser Befehl entfernt unwiderruflich alle unstaged und staged Änderungen, die noch nicht committet wurden.

Verwerfen von Änderungen nach einem Commit

Falls Sie bereits einen Commit vorgenommen haben, der Fehler enthält, können Sie mit git revert oder git reset arbeiten, um diesen rückgängig zu machen. Der Befehl git revert erstellt einen neuen Commit, der die Änderungen des vorherigen Commits aufhebt, ohne die Historie zu verändern. Mit git reset --hard <Commit-Hash> können Sie das Repository auf einen älteren Commit zurücksetzen, verlieren dabei jedoch lokale Commits und Änderungen. Dieses Vorgehen sollte mit Vorsicht erfolgen, vor allem wenn Änderungen bereits zu GitHub gepusht wurden.

Zusammenfassung

Das Verwerfen von Änderungen in Git ist ein grundlegender Bestandteil des Workflows und ermöglicht ein flexibles Arbeiten an Projekten. Abhängig davon, ob Änderungen gestaged, unstaged oder bereits committet sind, kommen unterschiedliche Befehle zum Einsatz. Es ist wichtig, vor dem Verwerfen von Änderungen genau zu prüfen, was gelöscht wird, um Datenverluste zu vermeiden. Verwenden Sie git restore oder git checkout für unstaged Änderungen, git reset für staged Änderungen und git reset --hard für ein vollständiges Zurücksetzen des Arbeitsverzeichnisses.

0

Kommentare