Zusammenführen von Branches
Sie können mehrere Branches integrieren, indem Sie den git merge-Befehl dazu verwenden.
Betrachten Sie die folgende Situation. Es gibt zwei Branches: einen bugfix
-Branch mit ein paar Commits aus dem Haupt-Branch main
.

In diesem Fall ist es kein großes Problem, bugfix
wieder in den Haupt-Branch main
einzubinden. Das liegt daran, dass sich der Haupt-Branch main
nicht geändert hat, seit bugfix
erstellt wurde. Git führt dies zusammen, indem es die Position main
auf die neueste Position von bugfix
verschiebt. Dieser Merge wird als fast-forward
(Schnellvorlauf) bezeichnet.

Im folgenden Beispiel wurde main
jedoch mehrfach aktualisiert, seit bugfix
verzweigt wurde. Die Änderungen von bugfix
und main
müssen kombiniert werden, wenn ein Merge auf diesen beiden Branches durchgeführt wird.

Für diese Art der Zusammenführung wird ein merge commit
erstellt, und die main
-Position wird auf den neu erstellten merge commit
aktualisiert.

Selbst wenn ein Fast-Forward-Merge möglich ist, können Sie den Merge explizit erzwingen, ohne dass ein Fast-Forward-Merge erfolgt.

Wie oben gezeigt, lässt ein Nicht-Fast-Forward-Merge den bugfix
-Branch unverändert. Dadurch erhalten Sie ein klareres Bild des Feature-Branches bugfix
. Sie können leicht herausfinden, wo der Feature-Branch beginnt oder endet, und die an dem Feature-Branch vorgenommenen Änderungen verfolgen.