CVS o SVN?
Martedì 20 Dicembre 2005 - 14:33
di Gabriele Farina

Grazie a sourceforge.net ho imparato ad apprezzare ed a utilizzare CVSper la gestione dei mei progetti. Ora posso dirmi abbastanza al sicuro da inconvenienti dovuti allo sviluppo in cooperazione con altri programmatori e posso gestire i miei progetti sulla maggior parte dei sistemi operativi che utilizzo.
Da qualche settimana però sto prendendo in considerazione anche SVN, un’alternativa molto valida a CVS che fornisce alcune feature aggiuntive molto interessanti tra cui:
- Viene mantenuta la storia delle operazioni su directory, di rinomino delle risorse e modifica dei metadati associati ai file;
- Il deposito dei file viene effettuato realmente solamente dopo che tutta la nuova versione è stata caricata correttamente;
- Grazie al supporto per WebDAV possiamo appoggiarci ad un server HTTP come Apache per la gestione dei progetti;
Personalmente non ho ancora effettuato il passaggio dato che voglio acquisire padronanza del sistema prima di decidere definitivamente che strada prendere. Qualche parere in proposito ?
Categoria: PHP e Open Source | Permalink
Commenti
1
SVN tutta la vita, lo usiamo in ufficio da un annetto ed è a dir poco eccezionale
# - postato da Giemme - 20 Dicembre 2005 - 15:04
2
SVN è uno spettacolo!
createvi un account gratuitamente: http://opensvn.csie.org/
ne vale la pena
3
grabié … io ti posso semplicemente dire che SVN non solo è NETTAMENTE superiore rispetto a CVS sia a livello di funzionalità, sia a livello di performance, sia a livello di facilità d’utilizzo ma è anche banalissimo da installare!
Ad esempio il CVS ha un gran problema con i file binari: gli si deve specificare che i file binary non devono essere salvati cosi come sono senza provare a creare patch o altro … l’svn fa tutto in auto
inoltre può usare sia il BDB (Berckley DB) sia il Filesystem per la gestione degli archivi!
Un’altra cosa fantastica, e secondo me molto furba, è la gestione delle revisioni complessiva: con il CVS ogni file ha la sua versione, con l’svn è una revisione complessiva dell’intero progetto ed in questo modo quando fai un’aggiornamento del codice ad una revisione precedente hai uno shot completo di quello che c’era prima, e non è una cosa tanto fattibile col CVS
insomma … le differenze ci sono e sono anche notevoli :)
# - postato da daniele_dll - 20 Dicembre 2005 - 15:21
4
dipende, se sei un duro e puro della command line il passaggio è indolore, anche i comandi sono molto simili.
se invece utilizzi qualche strumento specifico, magari integrato in un ambiente di sviluppo o altro, assicurati con qualche prova che il supporto subversion sia disponibile (anche tramite plugin) e all’altezza di quello per cvs, che per motivi “storici” in genere è il default# - postato da magomarcelo - 20 Dicembre 2005 - 17:33
5
beh …
ti dirò che subversion ha il FANTASTICO client chiamato tortoisesvn … che decisamente è MOLTO potente!
e non è soltanto integrato con la shell ti da anche un browser per repository remoti oltre a tutto quello che è di standard (patch, diff, reverse, update, commit, merge, e un’altra marea di roba)
Addirittura ti fa anche le statistiche delle revisioni, del numero di commit, del numero di sviluppatori ecc ecc ecc
:)
# - postato da daniele_dll - 20 Dicembre 2005 - 18:48
6
SVN senza dubbio, i vantaggi maggiori per me sono:
1. sintassi dei comandi abbastanza simile a CVS
2. gestisce il controllo di versione anche sulle directory, sul rename e sui metadati
3. il commit è realmente atomico
4. si integra con Apache
5. usa Berkeley DB
6. gestisce in maniera migliore i file binari
7. possibilità di eseguire dei comandi offline (status, diff, revert)L’unica cosa che in subversion cambia un po’ rispetto a CVS è la gestione delle branch e dei tag, ma ci si abitua in fretta!
# - postato da Luca Zappa - 21 Dicembre 2005 - 09:50
7
Scusate la mia voce fuori dal coro, ma non sono d’accordo nell’essere NETTAMENTE contento di SVN rispetto a CVS (mi riferisco specialmente a daniele_dll).
Mi spiego meglio:
1) che con i file binari sia tutto rosa e fiori non è vero. Ho avuto molti attimi di panico a causa di commit “anomali” per i file .jar
2) il fatto che sia più performante non penso si noti ad occhio nudo, anche se il fatto di usare BerkeleyDB è indubbiamente un vantaggio. Tuttavia, sfatiamo un mito: il FileSystem di CVS non è come il babau
3) che con CVS non si riesca veramente a fare uno shot del progetto non è assolutamente vero. I checkout con data/ora sono sempre esistiti, per non parlare dei tag
4) i tag di CVS sono veramente dei tag (etichette), mentre i tag SVN sono repliche vere e proprie dell’alberatura. Avere la possibilità di evolvere un tag mi sembra una cosa assurda
5) esiste anche TortoiseCVS, non solo TortoiseSVN, ed è bello anche luiPersonalmente ho usato sia CVS che SVN in diversi progetti. Li reputo semplicemente due alternative validissime per sopperire al bisogno di versioning.
Saluti! XD
# - postato da Davide Ratti - 24 Dicembre 2008 - 11:37
8
IO NON SO USARE NE SVN ED CVS TANATO E LA MIA IGNORANZA IN INFORMATICA
# - postato da NICOLA BRACCINI - 12 Ottobre 2010 - 17:38







