So führen Sie Zweigcode mit Git zusammen

青灯夜游
Freigeben: 2023-01-04 11:24:48
Original
10336 Leute haben es durchsucht

So führen Sie Zweigcode mit Git zusammen: 1. Verwenden Sie den Befehl „git merge“. Dieser Befehl wird zum Zusammenführen von Zweigen verwendet. Er kann den Inhalt anderer Zweige in den aktuellen Zweig zusammenführen. 2. Verwenden Sie den Befehl „git rebase“, mit dem der Basispunkt des aktuellen Zweigs geändert wird, um eine Zweigzusammenführung zu erreichen.

So führen Sie Zweigcode mit Git zusammen

Die Betriebsumgebung dieses Tutorials: Windows 7-System, Git-Version 2.30.0, Dell G3-Computer.

In Projekten erstellen wir immer viele Zweige, um verschiedene Funktionen oder Anforderungen zu entwickeln, und führen sie dann nach Abschluss der Funktionen wieder in den Hauptzweig zusammen. Wie können Sie also Zweige elegant zusammenführen? Wenn Sie an dieser Stelle Interesse haben, können Sie genauso gut weiterlesen.

Erstellen Sie ein Mehrspieler-Entwicklungsszenario

3. Entwickeln Sie zwei Zweige gleichzeitig

Funktionszweigentwicklung Die neuen Funktionen der nächsten Version wurden zweimal eingereicht und die a.txt-Datei bzw. die b.txt-Datei wurden geändert.

So führen Sie Zweigcode mit Git zusammen

Der Hauptzweig hat die Funktion dieser Version entwickelt. Sie wurde auch zweimal eingereicht und die a.txt-Datei und die b.txt-Datei wurden geändert.

So führen Sie Zweigcode mit Git zusammen

Die aktuelle Verzweigungssituation ist wie folgt: Die Zeichen auf jedem Knoten sind die Hashwerte jedes Commits. Der Header des aktuellen Master-Zweigs befindet sich auf dem C5-Knoten und der Header des Feature-Zweigs befindet sich auf dem c3-Knoten.


Zu diesem Zeitpunkt müssen Sie den Feature-Zweig wieder mit dem Master-Zweig zusammenführen. Es gibt zwei Möglichkeiten:

So führen Sie Zweigcode mit Git zusammen

Direktes Zusammenführen des Feature-Zweigs im Master-Zweig;


Erster Rebase (Rebase). den Feature-Zweig und führen Sie dann den Feature-Zweig im Master-Zweig zusammen. So führen Sie Zweigcode mit Git zusammen


Im Folgenden werden diese beiden Lösungen erläutert: So führen Sie Zweigcode mit Git zusammen

    Merge-Befehl 1: git merge
  • git merge wird verwendet, um Zweige zusammenzuführen und den Inhalt anderer Zweige in den aktuellen Zweig zusammenzuführen.
  • Der Git-Merge-Vorgang ist relativ gewalttätig und wird auch häufig verwendet. Die folgende Demonstration besteht darin, den Feature-Zweig mit dem Master-Zweig zusammenzuführen. Der spezifische Prozess ist wie folgt:

Finden Sie den neuesten gemeinsamen Vorfahren-Commit-Knoten c1 des Feature-Zweigs und des Master-Zweigs;

Führen Sie den neuesten Commit-Knoten c3 im Feature-Zweig mit dem neuesten Commit-Knoten c5 im Master-Zweig zusammen. Wenn zu diesem Zeitpunkt ein Konflikt besteht, lösen Sie alle Konflikte auf einmal. und dann einen neuen Commit-Knoten c6 generieren;

Gleichzeitig werden sie entsprechend der Commit-Zeit in den beiden Zweigen nacheinander auf dem Master-Zweig platziert. Sie können die Zeitreihenfolge mit git log anzeigen .

Das Ergebnisdiagramm des obigen Prozesses lautet wie folgt:
  • Die Betriebsbefehle im Projekt lauten wie folgt. Sie können sehen, dass nach der Ausführung des Befehls git merge feature Konflikte vorliegen. Betreten Sie den Zusammenführungsarbeitsbereich, lösen Sie alle Konflikte auf einmal und senden Sie einen neuen Commit.
  • So führen Sie Zweigcode mit Git zusammen

  • Ausführen gitk-Befehlszeile können Sie den aktuellen Zweig auf der Schnittstelle sehen, wie unten gezeigt. Es gibt ein neues Commit.
  • Bildbeschreibung hier einfügen

Merge-Befehl 2: git rebaseSo führen Sie Zweigcode mit Git zusammen

Dieser Befehl kann seine Funktion intuitiv anhand des Namens erkennen: Ändern des Basispunkts des aktuellen Zweigs. Beim Feature-Zweig handelt es sich um einen Zweig, der aus dem c1-Knoten des Master-Zweigs erstellt wurde, sodass sein Basispunkt c1 ist. Wenn Sie git rebase master im Feature-Zweig ausführen, ist der Vorgang ungefähr wie folgt:

  • Suchen Sie den neuesten Commit-Knoten c5 des aktuellen Master-Zweigs und ändern Sie den Basispunkt des Feature-Zweigs in den c5-Knoten. ;

  • Wenn ein Konflikt zwischen dem Feature-Zweig und dem Master-Zweig besteht, wird der Konflikt sequentiell basierend auf der Übermittlungszeit des Feature-Zweigs gelöst und der Hash-Wert des Commits des Feature-Zweigs wird geändert.

  • Bei Betrachtung des Zweigs wird schließlich eine gerade Linie angezeigt, es besteht jedoch ein Problem mit dem Überschreiben historischer Festschreibungen.

Das Ergebnis des obigen Prozesses ist unten dargestellt, wobei c2’ und c3’ angeben, dass sich der Hash-Wert geändert hat.

So führen Sie Zweigcode mit Git zusammen

Es ist erwähnenswert:

  • Wenn Sie einen Rebase-Vorgang durchführen, müssen Sie sicherstellen, dass sich der Master-Zweig im neuesten Zustand befindet. Andernfalls kann es beim Zusammenführen von Merge zu Konflikten und der Bedeutung der Verwendung von Rebase kommen wird verloren gehen.

  • Rebasieren Sie niemals Inhalte, die auf die Fernbedienung übertragen wurden. Wenn jemand den Remote-Code abruft und ihn dann ändert und übermittelt, wird die Verzweigung äußerst problematisch.

Nachdem wir den grundlegenden Prozess verstanden haben, können wir den Befehl rebase verwenden, um mit dem Zusammenführen von Zweigen zu beginnen:

  • Führen Sie git rebase master im Projekt aus, wie unten gezeigt. Da es in beiden Übermittlungen Konflikte gibt, müssen diese Konflikte nacheinander im Rebase-Arbeitsbereich gelöst werden.

So führen Sie Zweigcode mit Git zusammen

Führen Sie den Befehl gitk auf dem Feature-Zweig aus, der in der Benutzeroberfläche angezeigt wird:
So führen Sie Zweigcode mit Git zusammen

  • Nachdem der Feature-Zweig neu basiert, wechseln Sie zurück zum Master-Zweig und führen Sie git merge feature aus, um den Vorgang abzuschließen die Zusammenführungsoperation.

So führen Sie Zweigcode mit Git zusammen

Führen Sie gitk im Hauptzweig aus. Die Zweigstruktur ist wie folgt. Sie können sehen, dass die Zweige eine Linie aufweisen, die sehr erfrischend aussieht.

So führen Sie Zweigcode mit Git zusammen

Anleitung: Git Stash

Manchmal ist der Code für den Zweig noch nicht entwickelt und Sie müssen die Zweige zu diesem Zeitpunkt nur zusammenführen:

1. Führen Sie Git Stash aus Speichern Sie den Inhalt des Arbeitsbereichs und wählen Sie dann die beiden oben genannten Methoden zum Zusammenführen von Zweigen aus.

So führen Sie Zweigcode mit Git zusammen

2. Wechseln Sie nach Abschluss der Zweigzusammenführung zurück zum Entwicklungszweig, führen Sie git stash pop aus, um den Arbeitsbereichsinhalt anzuzeigen, und Sie können dann problemlos mit dem Schreiben des Codes fortfahren.

So führen Sie Zweigcode mit Git zusammen

Zusammenfassung

Git Merge ist relativ grob und die von den meisten Menschen gewählte Methode. Diese Methode kann sicherstellen, dass jedes Commit in chronologischer Reihenfolge angeordnet ist, das Verzweigungsdiagramm ist jedoch sehr chaotisch und wird eingeführt einmal, was bedeutungslos ist.

Git Rebase ist eine Zeile im historischen Commit-Datensatz, was sehr elegant ist, aber es besteht die Gefahr, dass das historische Commit geändert wird, und die Commit-Zeitleiste wird durcheinander gebracht, wenn das Protokoll mit Git Log angezeigt wird. Denken Sie gleichzeitig daran: Machen Sie Inhalte, die auf die Fernbedienung übertragen wurden, nicht neu , sonst wird der Zweig unübersichtlich.

Persönlich verwende ich eher die Rebase-Methode. Schließlich sind die kognitiven Kosten des Commits vorhanden und es sieht komfortabel aus. Aber wenn es viele Entwickler gibt, ist es besser, zusammenzuführen. Schließlich wird es alle zu Tode langweilen, Konflikte einzeln zu lösen, hahaha. Im Projekt werden wir immer viele Zweige erstellen, um unterschiedliche zu entwickeln Funktionen oder Anforderungen usw. Nachdem die Funktion abgeschlossen ist, führen Sie sie wieder mit dem Hauptzweig zusammen. Wie können Sie also Zweige elegant zusammenführen? Wenn Sie an dieser Stelle Interesse haben, können Sie genauso gut weiterlesen.

Das obige ist der detaillierte Inhalt vonSo führen Sie Zweigcode mit Git zusammen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
git
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage