Zum Inhalt springen

Einführung

mergeconflicts

Branching ermöglicht es Entwicklern, sich vom ursprünglichen Code-Base abzuzweigen und separat zu arbeiten. Dieser Abschnitt des Buches vermittelt Ihnen die Grundlagen zum Erstellen, Wechseln, Zusammenführen und Löschen von Branches. Er bietet außerdem Werkzeuge zur Lösung von Merge-Konflikten sowie verschiedene Strategien zur Auswahl beim Zusammenführen. Nachfolgend finden Sie die Befehle, die Ihnen bei Ihrer Arbeit helfen. Weitere Informationen zu den folgenden Befehlen finden Sie auf den nächsten Seiten.

git branch

Der Befehl git branch erstellt, listet und löscht Branches. Er ermöglicht keinen Wechsel zwischen Branches oder das Wiedervereinigen einer verzweigten Historie. Das Erstellen eines neuen Branches erstellt lediglich einen Zeiger auf einen bestimmten Commit, ohne das bestehende Repository zu verändern. Der Befehl git branch ist mit den Befehlen git checkout und git merge integriert. Git-Branches sind ein Zeiger auf einen Schnappschuss der vorgenommenen Änderungen.

git checkout

Der Befehl git checkout wechselt zwischen Branches oder stellt Arbeitsbaumdateien wieder her. Er arbeitet mit Dateien, Commits und Branches. Zudem ermöglicht er den Wechsel zwischen mehreren Features in nur einem einzigen Repository. Der Befehl git checkout aktualisiert die Dateien im Arbeitsverzeichnis, sodass sie mit der in diesem Branch gespeicherten Version übereinstimmen, und aktualisiert den HEAD-Zeiger.

git merge

Der Befehl git merge integriert unabhängige Entwicklungszweige in einen einzelnen Branch. Der Befehl git merge arbeitet Hand in Hand mit dem Befehl git checkout zur Auswahl des aktuellen Branches sowie mit dem Befehl git branch unter Verwendung des -d-Flags zum Löschen des veralteten Ziel-Branches. Die grundlegende Verwendung von git merge besteht im Kombinieren von zwei Branches.

Merge-Konflikte

Der Befehl git merge versucht, isolierte Branches zusammenzuführen. Merge-Konflikte treten auf, wenn mehrere Autoren denselben Inhalt bearbeiten oder wenn ein Entwickler eine Datei löscht, während ein anderer Entwickler Änderungen daran vornimmt. Um dieses Problem zu lösen, arbeiten Entwickler in isolierten Branches.

Git-Merge-Strategien

Wenn die Arbeit abgeschlossen und bereit ist, in die Hauptentwicklungslinie zusammengeführt zu werden, sollte eine Merge-Strategie gewählt werden. Wird keine Strategie angegeben, wählt der Befehl git merge automatisch eine Merge-Strategie basierend auf den angegebenen Branches aus.

Praxis

Welche Funktionen haben die verschiedenen Git-Befehle im Zusammenhang mit Branches?

Finden Sie das nützlich?

Dual-run-Vorschau — vergleichen Sie mit den Symfony-Routen live.