Git unisce due filiali locali


147

Ho ramo Master, ramo A e ramo B. Ora sto lavorando nel ramo A e ho bisogno di unire il ramo A con il ramo B e continuare il mio lavoro nel ramo A. Tutti i file vengono compressi nei rami A e B.

Qual è il modo rapido per implementarlo?

Risposte:


247

Se ho capito la tua domanda, si desidera unire branchBin branchA. Per fare ciò, prima verifica branchAcome di seguito,

git checkout branchA

Quindi eseguire il comando seguente per unire branchBin branchA:

git merge branchB

3
Dobbiamo assicurarci che i rami A e B esistano nel repository locale. Solo così possiamo eseguire l'unione.
Santhosh,

8
La domanda è esplicita:I have branch Master, branch A and branch B.
LeeGee,

166

Ecco un'immagine chiara:

Supponendo che abbiamo il ramo A e il ramo B

Vogliamo unire il ramo B nel ramo A

on branch-B -> A: switch to branch-A

on branch-A: git merge branch-B

32
questo non è affatto più chiaro, basta inserire l'ingresso del terminale è molto più facile da capire
lopu

9
Questa non è una risposta abbastanza chiara .... cosa significa "aggiorna il ramo B" ... ci sono molti modi per farlo, quale? ... invece di cambiare git checkout branch-A è più comprensibile
Erdinç Çorbacı

2

La risposta dell'Abiraman era assolutamente corretta. Tuttavia, per i principianti, potrebbero dimenticare di estrarre il repository. Ogni volta che vuoi fare un'unione da branchB a branchA. Prima fai il checkout e prendi pull da branchB (Assicurati che il tuo branch sia aggiornato con branch remoto)

git checkout branchB
git pull

Ora il tuo branchB locale viene aggiornato con branchB remoto Ora puoi effettuare il checkout su branchA

git checkout branchA

Ora sei nel ramo A, quindi puoi unirti con il ramo B usando il seguente comando

git merge branchB

0

Se tu o un altro sviluppatore non lavorerete ulteriormente su BranchB, penso che sia meglio mantenere impegni per fare ritorni senza mal di testa. Così ;

git checkout branchA
git pull --rebase branchB

È importante che branchB non debba più essere utilizzato.

Per più ; https://www.derekgourlay.com/blog/git-when-to-merge-vs-when-to-rebase/


1
Nel suo titolo, la domanda riguarda i repository locali - per i quali pullnon funzionerà.
LeeGee,

2
Hai ragione, pensavo solo che aggiungere questa conoscenza sarebbe stato un vantaggio perché probabilmente la filiale locale verrà spinta alla fine. Ma ho perso il punto che hai indicato, è meglio aggiungere questo come commento e non come risposta. Grazie per avermi avvisato.
Erdinç Çorbacı,

0

sul ramo B fare $git checkout branchAper passare al ramo A

sul ramo $git merge branchB

Questo è tutto ciò di cui hai bisogno.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.