it-swarm.com.de

Holen Sie sich Änderungen vom Master in den Zweig in Git

In meinem Repository habe ich einen Zweig namens aq, an dem ich arbeite.

Ich habe dann neue Arbeiten und Fehler in master begangen.

Was ist der beste Weg, um diese Commits in den Zweig aq zu bringen? Erstellen Sie einen weiteren neuen Zweig aus master und führen Sie ihn mit aq zusammen.

599
Slee

Überprüfen Sie den Zweig aq und führen Sie einen Rebase von master durch.

git checkout aq
git rebase master
691

Sie sollten nur git merge Origin/master können, wenn Sie sich in Ihrem aq-Zweig befinden.

git checkout aq
git merge Origin/master
263
Chris Kooken

Zuerst zum Meister auschecken:

git checkout master

Führen Sie alle Änderungen, Hotfixes und Commits durch und drücken Sie Ihren Master.

Gehen Sie zurück zu Ihrem Zweig, 'aq', und führen Sie den Master darin zusammen:

git checkout aq
git merge master

Ihre Niederlassung wird mit master auf dem neuesten Stand sein. Ein gutes und grundlegendes Beispiel für das Zusammenführen ist .2 Git Branching - Grundlegendes Verzweigen und Zusammenführen.

82

Es gibt keine Garantie, dass die Haupt-Bugfixes nicht zu den anderen Commits gehören, daher können Sie sie nicht einfach zusammenführen. Machen

git checkout aq
git cherry-pick commit1
git cherry-pick commit2
git cherry-pick commit3
...

unter der Annahme, dass diese Commits die Fehlerbehebungen darstellen.

Behalten Sie jedoch von nun an Fehlerbehebungen in einem separaten Zweig. Sie können nur

git merge hotfixes

wenn Sie sie alle in den regulären Entwicklungszweig rollen möchten.

23
Adam Dymitruk

Entweder cherry-pick die relevanten Commits in Zweig aq oder Zweig master in Zweig aq zusammenführen.

16

Füge es mit aq zusammen

git checkout master
git pull
git checkout aq
git merge --no-ff master
git Push
9
alditis

Einfacher Weg

# 1. Create a new remote branch A base on last master
# 2. Checkout A
# 3. Merge aq to A
7
Alen Lee

Für mich gab es bereits Änderungen und ich wollte die neuesten aus der Basisbranche. Ich war nicht in der Lage, rebase zu machen, und cherry-pick hätte ewig gedauert, also habe ich Folgendes getan:

git fetch Origin <base branch name>  
git merge FETCH_HEAD

also in diesem Fall:

git fetch Origin master  
git merge FETCH_HEAD
6
Pete B.

Sie haben ein paar Möglichkeiten. git rebase master aqauf den Zweig, der die Festschreibungsnamen behält, aber NICHT ZURÜCKNEHMEN, wenn dies ein entfernter Zweig ist. Sie können git merge master aq eingeben, wenn Sie die Commit-Namen nicht behalten möchten. Wenn Sie die Festschreibungsnamen beibehalten möchten und es sich um eine entfernte Verzweigung handelt, git cherry-pick <commit hash> wird die Festschreibung für Ihre Verzweigung durchgeführt.

2
Dan McNamara