Ho lavorato su un ramo new_feature
:Git mantenendo rami separati in sincronia
A -- B -- C -- D master
\ \
\ 1 -- 2 -- 3 new_feature
\
E -- F -- G port
Il nostro codice di base ha anche un ramo più vecchio port
dove un altro sviluppatore portato il nostro prodotto ad un altro RDBMS. port
non è ancora pronto per essere unito a master
.
Recentemente è diventato necessario disporre di new_feature
in port
. Così ho fuso quei due in un nuovo ramo port/new_feature
, e fatto alcuni commit lì (I, J) per farlo funzionare:
A -- B -- C -- D master
\ \
\ 1 -- 2 -- 3 -- I* -- J* -- K new_feature
\ \
E -- F -- G -- H -- I -- J -- K* port/new_feature
port
I ciliegia raccolte I e J di nuovo in new_feature
(come I *, J *) perché hanno implicato un significativo refactoring che volevo avere anche in new_feature
. Ho anche effettuato nuovi commit (K) a new_feature
che devono essere riportati a port/new_feature
(K *).
Andando avanti, qual è il piano migliore per mantenere new_feature
e port/new_feature
in sincronia (ma solo per quanto riguarda le modifiche apportate a)? Devo mantenere il cherry-picking che commette da uno all'altro (e viceversa)? O c'è un modo conveniente per farlo unendo?
Preferirei vedere tutti i rami uniti. Ma fintanto che continuo a lavorare sulla mia funzione e il mio master e la mia porta restano immersi, suppongo che abbia senso mantenere new_feature e port/new_feature come rami separati. Grazie per i punti positivi sulla raccolta delle ciliegie - Non vedo l'ora che arrivi tutto il giorno del master :-) – antinome