2011-12-08 27 views
19

genere creo nuovo ramo da sviluppareGit: creato nuovo ramo da un ramo sbagliato

git checkout -b new-feature develop 

poi, dopo l'ultimo commit unisco di nuovo a sviluppare

git checkout develop 
git merge new-feature 

ma questa volta ho creato new-feature2 Brach da new-feature e ora non riesco a unire a develop.

C'è un modo per passare a parentela new-feature2 a develop?

(I file ho lavorato sono stati la stessa versione in develop quindi questo dovrebbe non richiedono la fusione.)

risposta

4

quello di creare una patch, checkout al ramo develop e applicare la patch?

git checkout new-feature2 

git format-patch new-feature 

git checkout develop 

git am name-of-the-patch.patch 
+0

Suona bene, quali sarebbero i comandi? – hakunin

+0

Fantastico, non sapevo che le patch di git erano così facili, grazie! – hakunin

1

Si potrebbe anche usare git diff e git apply:

git diff new-feature..new-feature2 | git apply - 
+0

Grazie per aver incluso una soluzione alternativa! – hakunin

26

Si potrebbe rebase tua caratteristica verso la base principale:

git checkout new-feature2 
git rebase --onto develop new-feature new-feature2 
# rebase the stuff from new-feature to new-feature2 onto develop branch 

o farlo 'manualmente' tramite prelievo di ciliegio

git checkout develop 
git log --oneline new-feature..new-feature2 
# for every commit call: 
git cherry-pick <commit-id> # note, newer versions of cherry-pick allow multiple commits at once 
+0

Ho già risolto il problema con le patch, ma suona più come quello che stavo cercando. Grazie per aver incluso i comandi, questo aiuterà i lettori. (PS: Si noti che il ramo che ho voluto rebase era 'develop'. L'esempio dice' maser'.) – hakunin

+0

Ho cambiato l'esempio, grazie per aver segnalato che hakunin. – reto

+0

salvavita .... (beh, mi ha risparmiato un po 'di tempo comunque !!!) –

3

Hai visto rebase interattivo?

git rebase -i develop 

è una soluzione piuttosto semplice: mostrerà tutti i tuoi commit da quella filiale. Basta eliminare le linee "pick" dal ramo indesiderato.

+0

Suono fantastico, grazie per aver aggiunto questo! – hakunin

Problemi correlati