SVN richiede la presenza di un server dove salvare i commit che vengono fatti e questo server deve essere sempre raggiungibile, altrimenti non si può versionare il lavoro. Se il lavoro da versionare viene fatto sempre in luoghi collegati a questo server il problema non sussiste, ma se questo non avviene come nel mio caso, nascono dei seri limiti. Io ad esempio lavoro molto anche in viaggio e questo limita il mio accesso alla rete.
A questo problema viene incontro git. Git è il VCS creato da Linus Torvalds per la gestione del kernel di Linux ed ha una serie di vantaggi:
- non richiede la presenza di un server.
- può essere distribuito, e quindi permette la collaborazione tra gli utilizzatori (o sviluppatori).
- I commit possono prima venir salvati in locale, nel proprio repository, e poi successivamente inviati ad un server condiviso.
- Ha gli stessi vantaggi di qualsiasi altro sistema di VCS.
Oggigiorno git sta diventando il sistema di versionamento più diffuso e, a mio parere, quello che fornisce, a parità di caratteristiche, le maggiori funzionalità.
Git offre la massima potenza tramite l'utilizzo della shell, ma esistono moltissimi programmi grafici che facilitano il lavoro. Un prodotto che mi sento di consigliare per OSX (ma esiste la versione anche per Windows) è SourceTree della Atlassian.
Molti IDE danno già l'integrazione con git come PHPStorm
Nessun commento:
Posta un commento