Supponiamo che ci sia un team di dieci sviluppatori agili. Ogni giorno scelgono un'attività dal consiglio di amministrazione, commettono diverse modifiche contro di essa, fino a quando (entro la fine della giornata) hanno completato l'attività. Tutti gli sviluppatori effettuano il check-in direttamente sul trunk (in stile Google, ogni commit è un candidato al rilascio, utilizzando gli interruttori di funzionalità ecc.).
Se utilizzavano un CVS centralizzato come SVN, ogni volta che uno di loro si impegna, il server di build si integra e verifica le proprie modifiche rispetto al lavoro degli altri nove sviluppatori. Il server di build funzionerà praticamente ininterrottamente tutto il giorno.
Ma se stessero usando un DCVS come git, lo sviluppatore potrebbe attendere fino al completamento dell'attività prima di raggruppare tutti i propri commit locali nel repository centrale. I loro cambiamenti non saranno integrati fino alla fine della giornata.
In questo scenario, il team SVN si sta integrando continuamente più frequentemente e sta scoprendo problemi di integrazione molto più velocemente rispetto al team git.
Questo significa che i DVCS sono meno adatti per i team continui rispetto ai vecchi strumenti centralizzati? Come potete aggirare questo problema della spinta differita?