Ho un vecchio ramo ( old-branch ) che ho usato per l'ultima volta circa quattro mesi fa con lo sviluppo di una funzionalità per un progetto specifico. Non è mai stato fuso in master perché la funzione non è mai stata riprodotta in base al piano ed è stata abbandonata.
Da allora, il progetto ha fatto molta strada e il codebase ora sembra molto diverso.
Nota: ho usato solo il controllo git / versione per alcuni mesi, quindi sto ancora imparando a riguardo. Inoltre, sono l'unica persona che utilizza questo repository e nessun altro lo userà mai, quindi tutte le modifiche sono - e continueranno a esserlo - le mie.
Ora ho bisogno di sviluppare una funzionalità per questo progetto, e ho controllato old-branch , ma il problema era che (naturalmente) ripristinato la base di codici originale (con nuove funzionalità) su come erano tutti quei mesi fa.
Inoltre, quando sono tornato a master , ho notato centinaia di file non tracciati (dal vecchio ramo).
La mia domanda è questa: dovrei creare un nuovo ramo ( development / feature ) o usare old-branch ? Se dovrei usare old-branch , come dovrei gestire le vaste differenze nel codebase e nei successivi file non tracciati quando torno a master ?
È buona pratica creare e utilizzare nuovi rami specifici per le funzionalità come e quando ne ho bisogno?
Penserei che con l'evolversi di un progetto e con l'emergere di nuove funzionalità, sarebbe più logico escludere il progetto (per creare una copia di lavoro di master così com'è in quel momento) quindi che è possibile apportare le modifiche e quindi unire new-branch di nuovo in master una volta completata la modifica. Tuttavia, essendo relativamente nuovo al controllo git / versione, forse questo non è il modo corretto di fare le cose. Non lo so.
Avevo l'impressione che dovresti avere un ramo development /% co_de dedicato che usi per sviluppare ulteriormente nuove funzionalità, e poi che ti unisci nuovamente a features una volta completate, ma forse sono io sbagliata.