git pull op een andere branch

Als ik aan een branch werk en me dan realiseer dat ik een andere branch in de mijne moet mergen, is hier mijn huidige workflow (laten we voor dit voorbeeld zeggen dat ik aan mijn branch werk en in master wil mergen):

git stash
git checkout master
git pull
git checkout my-branch
git merge master
git stash pop

Is er een manier in git om een andere branch te trekken dan de momenteel uitgecheckte, of is er een betere manier om dit te doen?

Bijvoorbeeld, dit is wat ik zou willen kunnen doen (nogmaals, laten we zeggen dat ik op mijn afdeling zit en wil samenvoegen in master):

git pull master
git merge master

De git-pull man-pagina zegt dat een git pull gewoon een get fetch is gevolgd door een git merge, dus is er een manier om het merge-gedeelte van de git pull uit te voeren op een andere branch dan degene die momenteel is uitgecheckt ?

Of is wat ik vraag gewoon niet mogelijk?


Antwoord 1, autoriteit 100%

Ik heb een bezwering gevonden die voor mij werkte:

git fetch origin master:master

dan (als je meteen wilt samenvoegen):

git merge master

Ik was echt verrast hoe moeilijk het was om hier een antwoord op te vinden, aangezien het een veelvoorkomend gebruik lijkt te zijn.


Antwoord 2, autoriteit 30%

Probeer dit:

git pull yourRepositoryName master

Antwoord 3, autoriteit 8%

Je zou ook dit kunnen proberen:

git fetch
git merge origin/master

Dit zal je lokale masterpointer niet updaten, maar het zal de laatste origin/mastersamenvoegen met je huidige lokale branch.


Antwoord 4, autoriteit 6%

We kunnen wijzigingen ophalen van een andere branch in dezelfde repository met het git pullcommando als volgt:

$ git pull origin <target-branch>

Zie de EXAMPLESsectie van man git-pull:

  •   Merge into the current branch the remote branch next:
           $ git pull origin next

Other episodes