2010-06-26 18 views
66

Ho un progetto sotto git. Mi piacerebbe iniziare una nuova filiale per aggiungere una nuova importante funzionalità. Sotto il ramo principale, continuerò ad aggiungere correzioni di bug e funzionalità minori. A intervalli regolari mi piacerebbe trasferire i cambiamenti dal ramo principale nella mia filiale "major new feature". Qual'è il miglior modo per farlo? Alla fine, unirò il ramo "major new feature" nel ramo principale.Git: ottenere modifiche da un altro ramo

risposta

49

git checkout featurebranch && git merge master

Si può fare questo tutte le volte che vuoi; non influenzerà il master e sarai in grado di farlo facilmente viceversa ogni volta che scoprirai che hai finito con il branch delle funzionalità.

+27

'git rebase master' può essere più desiderabile di' git merge master' per semplificare l'integrazione successiva di nuovo nel ramo principale. – Amber

99
git checkout featurebranch && git rebase master 

Finché non è stato ancora premuto, è meglio riprodurre le modifiche sopra il livello principale.

See:

+1

Puoi ottenere modifiche più recenti con git rebase o solo con git merge? – keflavich

+0

@keflavich dato che si sta ridefinendo 'featurebranch' in cima al master, si stanno ottenendo tutti gli ultimi commit da' master'. Un'unione sarebbe simile ma realizzerà un'integrazione leggermente più complessa con 'master' in seguito. – VonC

+1

ehi! Sono un newb git, quindi puoi entrare più nel dettaglio su "fino a quando non hai ancora spinto?" Ho un ramo di funzionalità che ho spinto a un repository remoto per il backup. Posso continuare a fare 'git rebase master', quindi eseguire il commit e spingere un po 'di lavoro nel mio branch feature, quindi' git rebase master'? Devo unire anche altri rami di funzionalità nel mio ramo! –

Problemi correlati