Lavoro in un piccolo team con altri sviluppatori remoti su Rails
un'applicazione. Stiamo iniziando a modificare il nostro git
flusso di lavoro. Abbiamo pensato a una struttura ramificata come di seguito:
(dev) -> (qa) -> (stag) -> (master)
Ma alcuni sviluppatori hanno pensato che potrebbe essere meno confuso per i nuovi sviluppatori che potrebbero spingere automaticamente alla produzione in master. Pensarono invece di far lavorare tutti i maestri e creare un ramo separato per la produzione.
(master) -> (qa) -> (stag) -> (prod)
Mi è stato insegnato che vuoi mantenere il master distribuibile e non usarlo come sviluppo e dai luoghi precedenti in cui ho lavorato master è sempre pensato per essere implementabile per la produzione.
Quali sarebbero alcuni degli svantaggi dell'utilizzo di una struttura di ramificazione in cui il master viene attivamente utilizzato per lo sviluppo e un ramo del prod separato è ciò che si utilizza per le distribuzioni?