Sie können entweder git merge master
oder git rebase master
, in diesem Fall würde ich Git Rebase bevorzugen .
Weil git rebase
es so aussieht, als ob die Änderungen im Feature-Zweig über den Änderungen im Master-Zweig vorgenommen wurden, wodurch das Versionsdiagramm einfacher wird.
Rebase
Nehmen wir das Beispiel aus dem git rebase Handbuch , git rebase master
in Zweig feature
:
A---B---C feature A'--B'--C' feature
/ --rebase--> /
D---E---F---G master D---E---F---G master
Dies git rebase
ist jedoch nur dann sinnvoll, wenn die Verzweigung nicht verteilt wurde, da die alten Commits A, B, C jetzt durch neue Commits A ', B', C 'und F ersetzt werden und G, die vorher nicht da waren.
Das eigentliche Ergebnis nach git rebase master
in branch feature
ist folgendes:
( A---B---C )
/
/ A'--B'--C' feature
/ /
D---E---F---G master
Commits A, B, C baumeln nach dem Rebase, sind aber über erreichbar git reflog feature
.
Verschmelzen
Wenn jemand an Ihrem Zweig gezogen hat oder Sie ihn irgendwo hingeschoben haben, sollten Sie stattdessen in ihn einarbeiten, um Verwirrung und zusätzliche Arbeit am anderen Ende zu vermeiden. Siehe Wiederherstellung nach Upstream-Rebase .
Dies ist das Ergebnis von git merge master
in branch feature
:
A---B---C feature A---B---C---M feature
/ --merge--> / ,---’
D---E---F---G master D---E---F---G master
Wenn Sie sich git merge feature
in einem Zweig befinden master
, würde dies alternativ so aussehen:
A---B---C feature A---B---C feature
/ --merge--> / \
D---E---F---G master D---E---F---G---M master