Come posso reintegrare un ramo di funzionalità con la storia di unione rotta in SVN?
-
11-12-2019 - |
Domanda
Ho un ramo di sviluppo di funzionalità di lunga durata, chiamiamolo dev-foo.Il problema è che quando cerco di unirlo a rilascio-1, ottengo tutti i tipi di orribili conflitti alberali e conflitti di fonte che non hanno alcun senso.Li ho ri-integrati in un nuovo ramo basato su trunk, insieme ad altre funzionalità che vogliono essere integrate insieme.Ogni unione che tento di fare o da questa filiale di integrazione è altrettanto in modo orribile in modo orribile.Cosa posso fare?
Soluzione
Sospetto vivamente che uno dei festi dal bagagliaio nel tuo ramo di sviluppo è stato accidentalmente rotto da te da qualche parte nel processo di risoluzione dei conflitti e di impegnarlo. Ciò significa che la storia del fusione del tuo ramo di sviluppo è "avvelenato" e fonderà che prolungherà solo il dolore e la sofferenza per te e tutti gli altri.
Prendi il cuore, tutto non è perso!
Ecco il metodo che ho usato per "ricostruire" i rami di sviluppo interrotti ai fini della re-integrazione senza introdurre i precedenti interventi interrotti dal tronco:
- .
- Avvia una nuova filiale dallo stesso punto che il ramo di sviluppo era iniziato.
- Unisci tutte le revisioni di Dev-Branch nella ricostruzione ramificarsi fino a, ma non incluso, il prossimo unione dal suo genitore ramo (tronco).
- Unisci dal genitore di dev-ramo (tronco) nel ramo di ricostruzione Le stesse revisioni che sono state unite al prossimo passo nel Storia originale di dev-ramo. Non sbagliare questa volta.
- Confronta (tra URL SVN) il dev-Branch a questo punto con il tuo ramo di ricostruzione fino ad ora. Giustificare o riparare eventuali differenze prima di andare avanti.
- Ripetere i passaggi 2-4 fino a quando non hai ricostruito l'intero ramo di sviluppo, ma senza problemi di fusione.
- Unisci il ramo di destinazione Reintegrazione nel ramo di sviluppo ricostruito.
- Risolvi qualsiasi sviluppo conflitti e prova la build.
- Re-Integrate Unisci i ricostruiti Ramo di sviluppo nel ramo di destinazione.