"Se hai un'attività che può essere svolta in sei ore, è meglio scrivere uno strumento che funzioni in 20 minuti, anche quando la creazione dello strumento richiede sei ore?"
Il controllo della versione distribuita è una bestia diversa da affrontare. Richiede un apprendimento sostanziale per ogni sviluppatore. Se si dispone del buffer per ospitare il processo di apprendimento per ogni sviluppatore, è necessario passare a un buon sistema di controllo della versione distribuito. Una volta terminata la fase di apprendimento, Distributed Version Control è molto meglio del controllo della versione centralizzata.
Il controllo della versione distribuito sembra essere un'eventualità. È qui per rimanere per un tempo molto lungo, è meglio che ci adattiamo ad esso prima che dopo. Ricordo la stessa discussione quando SVN era nuovo e le persone erano abituate al CVS, molti argomenti venivano forniti per non usare SVN, ma alla fine SVN divenne il sistema di controllo di versione più popolare.
Se la società è ben consolidata con un sacco di codice sorgente nel sistema di controllo della versione esistente, passare a un nuovo sistema è un compito importante, ma se la società è piccola o in fase di avviamento, passare a una nuova versione di controllo è molto facile. Ma se ci si attiene a un controllo di versione precedente (in una nuova configurazione) si verificherà il collo di bottiglia da qualche parte in futuro, dove si dovrà eventualmente pianificare una migrazione di controllo della versione.
Ho visto molti commenti SVN pro, ma tutti tendono ad essere della natura "SVN non è male" piuttosto che "SVN è migliore". Quindi ti consiglio vivamente di scegliere un controllo di versione distribuito (come Git) per il tuo progetto.
Modifica
Vantaggi di GIT su SVN
-
Nessun server dedicato richiesto In realtà, entrambi possono essere utilizzati senza un server.
- Può continuare lo sviluppo anche senza una connessione di rete.
- La gestione delle filiali è molto più semplice.
- Supporto migliore da strumenti CI come Bamboo
Qualcuno ha menzionato gli strumenti (per Visual Studio) come motivo per attenersi a SVN. Il link fornisce il supporto GIT per Visual Studio.