Grundlagen der Source Control – Teil 3

Änderungen verwerfen

Im letzten Artikel dieser Reihe zur Source Control in Xcode haben wir uns mit den sogenannten Commits auseinandergesetzt und erfahren, wie wir mit deren Hilfe Änderungen an einem Projekt im Versionsverwaltungssystem speichern können.

Passend dazu möchte ich in diesem Artikel darüber schreiben, wie man bereits durchgeführte Änderungen wieder verwerfen und damit rückgängig machen kann, die man noch nicht mittels Commit in das Versionsverwaltungssystem übernommen hat. Das Prozedere an sich ist recht simpel, lässt sich aber an verschiedenen Stellen aus Xcode heraus nutzen.

Verwerfen aller Änderungen

Grundsätzlich lautet der Befehl, jüngst durchgeführte Änderungen an einem Projekt wieder zu verwerfen, Discard Changes. Die erste Stelle, an der sich dieser Befehl finden lässt, ist innerhalb des Source Control-Menüs von Xcode. Dort findet ihr einen Punkt mit dem Titel Discard All Changes…

Über das „Source Control“-Menü gelangt ihr zum Befehl „Discard All Changes...“.
Über das „Source Control“-Menü gelangt ihr zum Befehl „Discard All Changes…“.

Wenn ihr diesen Punkt auswählt, erscheint ein Alert, in dem Xcode euch fragt, ob ihr wirklich alle noch nicht committeten Änderungen innerhalb des Projekts verwerfen wollt. Das führt dazu, dass das Projekt exakt dem Stand des jüngsten Commits entspricht. Behandelt diese Aktion also mit Bedacht, denn einmal durchgeführt, sind die verworfenen Änderungen unwiederbringlich verloren (es sei denn, ihr habt noch ein Backup des Projekts beispielsweise über Time Machine zur Hand).

Diese Aktion kann nicht rückgängig gemacht werden, löst sie also wirklich nur dann aus, wenn ihr all eure durchgeführten Änderungen seit dem letzten Commit tatsächlich verwerfen möchtet.
Diese Aktion kann nicht rückgängig gemacht werden, löst sie also wirklich nur dann aus, wenn ihr all eure durchgeführten Änderungen seit dem letzten Commit tatsächlich verwerfen möchtet.

Verwerfen auf Dateiebene

Statt aller Änderungen innerhalb eines Projekts könnt ihr Xcode aber auch dazu nutzen, nur einen Teil zu verwerfen. Das kann sowohl auf Datei- als auch auf Quellcode-Ebene geschehen.

Um die Änderungen innerhalb einzelner Dateien zu verwerfen, markiert ihr diese zunächst innerhalb des Project Navigators und ruft im Anschluss das Kontextmenü auf. Dort findet ihr innerhalb des Eintrags Source Control einen Punkt namens Discard Changes in „<Dateiname>“… beziehungsweise Discard Changes in <Anzahl der markierten Dateien> Files…. Ruft ihr diesen auf, erscheint ebenfalls ein Alert, über den ihr noch einmal das Verwerfen der Änderungen bestätigen müsst, genau wie beim zuvor beschriebenen Discard All Changes. Bestätigt ihr diese Aktion, werden alle Änderungen innerhalb der markierten Dateien verworfen.

Mithilfe des Kontextmenüs können die Änderungen innerhalb einzelner Dateien verworfen werden.
Mithilfe des Kontextmenüs können die Änderungen innerhalb einzelner Dateien verworfen werden.

Verwerfen auf Quellcode-Ebene

In manchen Fällen geht aber selbst das Verwerfen aller Änderungen innerhalb einzelner Dateien zu weit und stattdessen möchte man lediglich einzelne Anpassungen aus einer Datei entfernen und andere darin bestehen lassen. Erfreulicherweise ist auch das in Xcode kein Problem.

Im Editor werden Änderungen am Code, die noch nicht committet wurden, farblich durch einen blauen Balken am linken Rand hervorgehoben. Klickt man auf diesen Balken, öffnet sich ein kleines Popover-Fenster, in dem die Aktion Discard Change zur Verfügung steht. Ein Klick darauf genügt und die entsprechend markierte Änderung wird umgehend von Xcode rückgängig gemacht; dieses Mal auch ohne noch einmal zusätzlich eine Bestätigung durch den Entwickler abzufragen, entsprechende Obacht ist beim Umgang mit dieser Aktion geboten!

Einzelne Änderungen im Code können über dieses Menü wieder verworfen werden.
Einzelne Änderungen im Code können über dieses Menü wieder verworfen werden.

Aber keine Bange, solltet ihr doch einmal aus Versehen diesen Befehl auslösen: Solange die aktuelle Xcode-Sitzung nicht beendet wurde, könnt ihr durch die Tastenkombination CMD + Z das Verwerfen der Änderungen wieder rückgängig machen. Das ist allerdings nicht möglich, wenn ihr die Änderungen über die anderen beiden zuvor gezeigten Wege auf Dateiebene beziehungsweise über Discard All Changes… verworfen habt.

Fazit

Die Funktionen in Xcode zum Verwerfen der durchgeführten Änderungen seit dem letzten Commit sind simpel integriert und ebenso einfach zu nutzen. Ihr könnt entweder alle Änderungen, Änderungen in bestimmten Dateien oder einzelne Änderungen im Code auf diese Art und Weise wieder verwerfen.

Euer Thomas


Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert