Git: Zweig mit Master zusammenführen

Schnelle Antwort – Branch in Master zusammenführen

Wenn Sie nach einer schnellen Antwort suchen, können Sie einen Zweig mit dem zusammenführen master Zweig – Du checkout master und merge some_branch:

$ git checkout new-branch
# ...develop some code...

$ git add .
$ git commit –m "Some commit message"
$ git checkout master
Switched to branch 'master'
$ git merge new-branch

Sie immer checkout der Zweig, mit dem Sie zusammenführen, und merge ein Zweig, der bereits Änderungen aufweist.

Grundlegendes zum Zusammenführen von Zweigen mit Git

Wenn Sie Git noch nicht kennen, lohnt es sich jedoch, sich ein paar Minuten Zeit zu nehmen, um diese Befehle und ihre Funktionsweise zu verstehen. Es ist überraschend einfach und wird Sie weit bringen.

Hinweis: Im Jahr 2020 hat Git (zusammen mit großen Repository-Hosting-Plattformen wie GitHub, GitLab usw.) eine Änderung der offiziellen Terminologie übernommen und den Standardnamen des Zweigs in geändert main, aufgrund der negativen Konotationen des Wortes master kann mit sich bringen. Viele Projekte haben ihre Hauptzweige nicht migriert oder umbenannt, also auf absehbare Zeit – die Bedingungen master und main wird wahrscheinlich austauschbar verwendet.

Eine der leistungsstärksten Funktionen von Git ist die Möglichkeit, Zweige und Änderungen an der Codebasis einfach zu erstellen und zusammenzuführen.

Die verteilte Natur von Git ermutigt Benutzer dazu, häufig neue Zweige zu erstellen und diese im Rahmen des Entwicklungsprozesses regelmäßig zusammenzuführen – und bestimmte Git-Workflows nutzen dies umfassend aus.

Dies verbessert den Entwicklungsworkflow für die meisten Projekte grundlegend, indem kleinere, fokussiertere und granularere Commits gefördert werden, die einer strengen Peer-Review unterliegen.

Im Erbe Versionskontrollsysteme (wie CVS) war es aufgrund der Schwierigkeit der Zusammenführung auf fortgeschrittene Benutzer beschränkt. Andere moderne, aber zentralisierte Versionskontrollsysteme wie Subversion erfordern Commits an ein zentrales Repository, daher ist ein flexibler Workflow mit lokaler Verzweigung und Zusammenführung untypisch.

Ein häufig verwendeter Verzweigungsworkflow in Git besteht darin, für jede neue Funktion, Fehlerbehebung oder Verbesserung einen neuen Codezweig zu erstellen.

Diese nennt man Feature-Zweige.

Jeder Zweig unterteilt die Commits, die sich auf eine bestimmte Funktion beziehen. Sobald das neue Feature fertig ist – d. h. eine Reihe von Änderungen wurden am Feature-Zweig vorgenommen – kann es wieder in den Master-Zweig (oder einen anderen Hauptzweig der Codezeile, je nach verwendetem Workflow) zusammengeführt werden.

Hinweis: Feature-Verzweigung ist nicht das einzige Verzweigungsworkflow, den Sie verwenden können, der jedoch weit verbreitet ist und durch die Einfachheit der Zusammenführungsfunktionen von Git ermöglicht wird.

Zweig mit Git in einen anderen zusammenführen

Das git branch Der Befehl wird verwendet, um alle vorhandenen Zweige in einem Repository aufzulisten. Neben dem aktuell aktiven Zweig erscheint ein Sternchen:

$ git branch
* master

Um einen neuen Zweig zu erstellen, können wir die verwenden git branch new-branch Befehl. Dadurch wird ein neuer Zweig erstellt, der die Commits im aktuell aktiven Zweig widerspiegelt:

$ git branch new-branch
$ git branch
* master
new-branch

Hinweis: Hinter den Kulissen, Git nicht Erstellen Sie tatsächlich einen neuen Satz von Commits, um den neuen Zweig darzustellen. Ein Zweig ist wie ein Tag, und die Commits sind es auch von Locals geführtes. Du bist sich verzweigen eine neue Reihe von Änderungen aus dem Hauptzweig. Sobald ein Feature-Zweig fertiggestellt und mit dem Hauptzweig zusammengeführt ist, werden die darin enthaltenen Änderungen zum Hauptzweig, bis Sie einen neuen Feature-Zweig mit dem Hauptzweig zusammenführen.

Zu diesem Zeitpunkt haben wir einen neuen Zweig erstellt, befinden uns jedoch immer noch im Quellzweig. Um mit der Arbeit am neuen Zweig zu beginnen, müssen wir zunächst den Befehl ausführen git checkout new-branch. Dadurch wird der aktive Zweig in den neuen Zweig geändert:

$ git checkout new-branch
Switched to branch ‘new-branch'
$ git branch
master
* new-branch

An diesem Punkt können Commits für den neuen Zweig vorgenommen werden, um die neue Funktion zu implementieren. Sobald die Funktion abgeschlossen ist, kann der Zweig wieder mit dem Hauptcodezweig zusammengeführt werden.

Zuerst laufen wir git checkout master um den aktiven Zweig wieder in den zu ändern master Zweig. Dann führen wir den Befehl aus git merge new-branch zu Führen Sie die neue Funktion in den Master ein Ast.

Hinweis: git merge Fügt den angegebenen Zweig mit dem aktuell aktiven Zweig zusammen. Wir müssen also in der Branche sein, die wir sind Verschmelzung in.

Wenn Sie eine neue Funktion in den Hauptzweig einbinden, möchten Sie zunächst zum Hauptzweig wechseln und dann mit diesem zusammenführen:

# ...develop some code...

$ git add .
$ git commit –m "Some commit message"
$ git checkout master
Switched to branch 'master'
$ git merge new-branch

Sehen Sie sich unseren praxisnahen, praktischen Leitfaden zum Erlernen von Git an, mit Best Practices, branchenweit akzeptierten Standards und einem mitgelieferten Spickzettel. Hören Sie auf, Git-Befehle zu googeln und tatsächlich in Verbindung, um es!

Wenn alles gut geht, ist unsere Arbeit erledigt. Die neuen Feature-Commits erscheinen nun im Hauptzweig. Es ist jedoch möglich, dass Git die Zusammenführung aufgrund einer Konfliktänderung im Quellzweig nicht abschließen kann. Dies nennt man a Konflikt zusammenführen.

Zusammenfassend sind hier die Befehle, um einen neuen Zweig zu erstellen, einige Commits durchzuführen und ihn wieder mit dem Master zusammenzuführen:

$ git checkout master
$ git branch new-branch
$ git checkout new-branch

# ...develop some code...

$ git add .
$ git commit –m "Some commit message"
$ git checkout master
$ git merge new-branch

Über den Autor

Dieser Artikel wurde von Jacob Stopak geschrieben, einem Softwareberater und Entwickler mit Leidenschaft dafür, anderen dabei zu helfen, ihr Leben durch Code zu verbessern. Jacob ist der Schöpfer von Erster Commit – eine Website, die neugierigen Entwicklern dabei helfen soll, zu erfahren, wie ihre Lieblingsprogramme codiert sind. Das vorgestellte Projekt hilft Menschen Git lernen auf Codeebene.

Zeitstempel:

Mehr von Stapelmissbrauch