Il riferimento canonico è Subversion RedBook . Indipendentemente dalle tue abilità passate, leggi questo da fresco e otterrai tutte le informazioni di utilizzo di cui hai bisogno. Non è difficile o completamente alieno, molte persone dicono che SVN è molto più facile da capire di git, quindi dovresti stare bene con solo un po 'di lettura dei comandi principali. Il capitolo sull'uso di base dovrebbe essere pronto per l'uso senza problemi.
Ci sono 2 differenze principali:
- commit = invia al repository centrale. Non c'è rebase o commit locale, né pull.
- la ramificazione è per directory. È meglio pensare all'intero repository come a una struttura di directory, la ramificazione è come creare un collegamento simbolico con la semantica copy-on-write. Considerando che in git si dirama l'intero repo e si passa da uno all'altro in modo che il nuovo ramo "copra" la propria copia di lavoro, con SVN è possibile scambiare parti del proprio repo. Generalmente le persone si diramano in una cartella di primo livello (di solito chiamate diramazioni), quindi il passaggio diventa molto più simile allo stile di lavoro "overlay" di git.
La ramificazione è banale, la fusione non è affatto lontana come gli apologeti di DVCS, specialmente se ci si attiene al trio "standard" di cartelle di livello superiore (chiamate trunk, branches e tag).
Ci sono alcuni bit in cui SVN batte git in, mi vengono in mente le directory sparse - dove si controlla solo una parte del repository. Quando hai bisogno di più parti, aggiorni solo ciò di cui hai bisogno. Se si dispone di un repository enorme (ad esempio un prodotto principale e un sacco di plugin) questo è geniale.
Ci sono alcuni bit che non sono buoni come git, viene in mente il terribile conflitto con gli alberi - dove hai un conflitto a livello di directory (cioè qualcuno ha cancellato un file che hai modificato)
Se sei su Windows, usa TortoiseSVN. Scuote principalmente.