Background: Di recente ho ereditato una serie di progetti nella mia azienda e sto cercando di risolvere alcuni problemi fondamentali con il modo in cui sono stati gestiti. Vale a dire, i precedenti sviluppatori (che non sono più con l'azienda) non stavano usando alcuna forma di controllo del codice sorgente, avevano fatto poca documentazione e non avevano in realtà buoni processi di sviluppo.
Quindi ora ho tre server di progetti (sviluppo, gestione temporanea, produzione) che consistono principalmente in siti Web e applicazioni e strumenti creati per applicazioni e API di terze parti che utilizziamo, fino a archivi di script SQL e altre cose. Il mio primo pensiero è stato quello di inserire tutto questo in Git prima che vengano apportate modifiche e correzioni, ma sto facendo fatica a trovare il modo migliore per farlo.
Gran parte dello sviluppo precedente è stato effettuato direttamente sui server di produzione, il che ha creato una divisione tra la base di codici di ciascun server. Non è immediatamente chiaro dove si trovano tutte le differenze: sto vedendo correzioni di bug sul lato della produzione che non sono riportati sullo sviluppo / stadiazione, così come nuove funzionalità sullo sviluppo che non sono state spostate verso la stadiazione / produzione .
Domanda: Quale sarebbe il modo migliore per me di organizzare e spostare questi in Git? Come strutturerei i miei repository / filiali per adattarsi alle differenze nel codice?
Ho considerato lo sviluppo continuo da cloni del codice del server di produzione e mantenendo le basi di codice di sviluppo / gestione temporanea come riferimento storico. Questo potrebbe potenzialmente essere un punto di partenza, considerando che non so comunque nulla del codice di sviluppo / messa in scena? Potrei semplicemente creare repository dei server di produzione per ogni sito Web, strumento, set di script, ecc., Creare rami per il codice di sviluppo / staging esistente e qualsiasi nuovo sviluppo deriverebbe dalla base di codice del server di produzione. ha senso?