Ho appena assunto un programmatore junior e sarà il secondo vero programmatore accanto a me.
Il nostro software è strutturato in git con il flusso di lavoro gitflow. Normalmente sviluppo e spingo direttamente sul ramo di sviluppo.
Quando viene eseguito il push di un commit, viene prelevato direttamente da TeamCity e Octopus e distribuito sul server di test sotto il dominio dev.domain.com.
In questo modo i membri del QA possono testare i miei cambiamenti.
Ora il ragazzo junior non avrà questo lusso, avrà bisogno di fare PR per entrare nel ramo dello sviluppo. Ha ancora bisogno di essere in grado di spingere il lavoro in un ambiente di test per il controllo della qualità.
Finora ho trovato 2 soluzioni:
1: Crea un singolo ramo dove si impegna, verrà automaticamente distribuito su un sito dev2.domain.com. Il problema è che i PR sono difficili da fare poiché continuerà a sviluppare un nuovo codice in questo ramo.
2: per ogni nuova funzione, uno script crea automaticamente una configurazione di TeamCity + Octopus, si distribuisce su un sito feature.domain.com e lo abbatte nuovamente quando la funzione viene unita. Il vantaggio è che è molto facile da PR perché le funzionalità sono contenute, il lato negativo è che è necessario configurare l'ambiente di test e ci vuole tempo + risorse del server.
In che modo gli altri team gestiscono questo flusso di lavoro?
Modifica: sembra che il punto non si stia verificando. Il mio codice passa attraverso gli stessi identici passaggi di chiunque altro codice. Ma la domanda era: come strutturare l'ambiente di test? Se creo rami di funzionalità, come possono accedere al mio manager e al QA? Devo configurarli manualmente in TeamCity e Octopus? Questo è il motivo per cui continuo a svilupparmi, viene implementato in questo modo nel nostro ambiente di test.