Was ist ein Merge
Teil des Abschnitts Versionsverwaltung der Terminal-Journey von Coddy — Lektion 34 von 58.
Ein Merge führt die Arbeit von einem Branch in einen anderen zusammen. Nach einem erfolgreichen Merge enthält der Ziel-Branch jeden Commit aus beiden Branches, und die Dateien spiegeln das kombinierte Ergebnis wider.
Der Standard-Workflow sieht so aus:
- Wechseln Sie zu dem Branch, in den Sie hinein mergen möchten (normalerweise
main). - Führen Sie
git merge other-branchaus.
git switch main
git merge feature-loginGit betrachtet die Historien der beiden Branches und findet heraus, wie sie kombiniert werden können. Meistens geschieht dies automatisch. Die zwei Hauptarten von Merges sind:
- Fast-forward:
mainhat sich seit der Erstellung des Branches nicht bewegt. Git schiebt einfach denmain-Pointer nach vorne. - Three-Way-Merge: Beide Branches haben neue Commits. Git erstellt einen neuen „Merge-Commit“, der sie kombiniert.
Sie werden beide Formen in den nächsten zwei Lektionen sehen.
Aufgabe
AnfängerDer Ordner enthält app.txt. Richte das Repo ein, erstelle einen ersten Commit auf main und gib dann den aktuellen Branch aus.
Dies ist nur ein Aufwärmen vor dem Mergen in der nächsten Lektion.
Spickzettel
Ein Merge führt die Arbeit von einem Branch in einen anderen zusammen. Wechseln Sie zuerst zum Ziel-Branch und führen Sie dann den Merge durch:
git switch main
git merge feature-loginZwei Arten von Merges:
- Fast-forward:
mainhat sich seit der Erstellung des Branches nicht bewegt — Git verschiebt einfach den Pointer nach vorne. - Three-way merge: Beide Branches haben neue Commits — Git erstellt einen neuen Merge-Commit.
Probier es selbst
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Versionsverwaltung
2Erste Schritte
Ein Repository initialisierenDer .git-OrdnerIdentität konfigurierenGit StatusZusammenfassung – Erstes Repo5Dateien ignorieren
Warum Dateien ignorierenGitignore-MusterIgnore-Regeln prüfenZusammenfassung – Sauberes Repo8Merging
Was ist ein MergeFast-Forward-MergeThree-Way-MergeMerge-KonflikteEinen Konflikt lösenRückblick – Merge-Master3Änderungen nachverfolgen
Die Staging AreaGit AddGit CommitÄndern einer verfolgten DateiGit LogZusammenfassung – Erste Commits6Projekt Rezept-Website
ProjektübersichtInitialisieren und Ignorieren