Claudio Cicali ha scritto:
Consiglio subversion:
Sia CVS che SVN (subversion) gestiscono questo tipo di conflitti.
Subversion li gestisce meglio:
Subversion NON ti permette di fare commit di versioni di file con
conflitti.
Oltretutto, sempre sui conflitti, svn e` piu` elegante. A fronte di
di un impossibile "merge", ti vengono scaricati la versione piu'
nuova, la versione comune non modificata e ti viene rinominata la
versione che hai tu in locale. In questo modo hai tutti i dati
necessari alla risoluzione del problema.
una delle piu` grosse pecche di cvs (gia` questo un motivo per
abbandonarlo) è quella di non aver il commit "atomico".
Bene, il commit dovrebbe anche aggiornare la macchina
di test in maniera che tutti possano provare la nuova versione.
Altri vantaggi (possibilità di muovere/cancellare directory, cosa
che il cvs non sa fare, semplicità di amministrazione, semplicità
di gestione dei branches, storia delle copie e delle move... etc)
sono lunghi da spiegare, e mi sono già dilungato abbastanza.
Tutto vero, eppure io di recente di fronte al problema "quale metto su"
ho preferito CVS, per cui mi par giusto dar conto di un punto di vista
diverso sul problema.
Per prima cosa, CVS è in giro da parecchi anni: i bachi che c'erano
ormai sono stati tolti o sono ben noti e passano come "missing feature"
e quindi gestibili. Essendo diffuso, è facile trovare qualcuno che lo
sappia amministrare (beh, in Italia fino a un certo punto) e se uno
sviluppatore ha già avuto modo di usare un sistema di version control, è
probabile che fosse CVS (mi risulta che Visual Source Safe più che usato
venga aggirato, per ragioni che non mi dilungo a spiegare).
Inoltre, per CVS c'è una marea di aggiunte, front-end e analoga
paccottiglia che semplifica la vita. Per Subversion, ci stanno arrivando
ma per ora c'è meno materiale.
Nel merito tecnico, l'unica critica che mi sento di muovere a Subversion
è il fatto di richiedere un server WebDAV, ovvero un componente in più
da installare, configurare e seguire. Non nego che con il tempo possa
rivelarsi una scelta intelligente: il problema, dal mio punto di vista,
è che Subversion è semplicemente troppo nuovo per un uso di produzione.
La cosa mi ricorda un pò la diatriba tra Sendmail e Postfix: fin dai
primordi Postfix è risultato evidentemente assai ben progettato e con
grandi potenzialità, ma la posta era una funzione troppo critica perchè
la si possa affidare a qualcosa realizzato da pochi anni. Oggi il
discorso sarebbe diverso, postfix è in circolazione da un numero di anni
sufficiente, è sufficientemente diffuso e ha dimostrato che il progetto
originale era nettamente migliore (poche versioni, pochi bachi di
sicurezza sono indici di un buon progetto iniziale).
Davide Bolcioni
--
There is no place like /home.
|