Newsgroup: it.comp.programmare
Titolo: VCS per files binari

Ciao a tutti, chi mi sa consigliare un buon sistema di controllo di
versione con le seguenti caratteristiche?
1 - Dovrebbe fuzionare sia su Windows che su Linux
2 - Dovrebbe gestire bene i files binari, in particolare nei
trasferimenti (come rsync)
3 - Dovrebbe basarsi sui contenuti dei files piuttosto che sulle date
di modifica
Esiste qualcosa del genere?
Grazie

 Esiste qualcosa del genere?
Mercurial. E` decentralizzato, velocissimo e basato su vari algoritmi
per renderlo performante il più possibile. 
Guarda le slides che hanno presentato quest'anno all'EuroPython
http://indico.cern.ch/contributionDisplay.py?contribId=29&sessionId=49&c
onfId=44
Se non ti convincono quelle slide (o ti da fastidio il fatto che sia
decentralizzato) magari proverò a suggerirti altre alternative cross
platform.
-- 
Lawrence - 
http://www.oluyede.org/blog
"Nothing is more dangerous than an idea
if it's the only one you have" - E. A. Chartier

 platform.
Dovrei provarlo...cmq quel che servirebbe a me è qualcosa che non si basa
sulle date, ma sull'effettivo contenuto dei file, visto che devo lavorare
con un sistema del cavolo con files quasi tutti binari e le date dei files
cambiano ad ogni ricompilazione...ho provato ad usare subversion, ma ad
ogni commit ci perderei un sacco di tempo...ho provato anche rsync, ma non
è un vero VCS...
Comunque grazie, mi guardo un po'mercurial...anche perchè è in python :-)
Ciao

[...]...ho provato ad usare subversion, 
Ti stavo consigliando CVS.  Subversion è simile.  Sono i due migliori
software di questo tipo.



Subversion è più avanzato di CVS, e quando devo usare qualche VCS uso
quello...ma in questo caso non va bene. Per di più, con i files binari
non è proprio performante...
Grazie lo stesso!

 Grazie
E di che :°D
David
P.S.: era solo un'idea che mi è venuta... quella del `diff` intendo.
- --
Linux Registered User #334216
Get FireFox! >> 
http://www.spreadfirefox.com/?q=affiliates&id=48183&t=1
Staff >> 
http://www.debianizzati.org
 <<
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.9.20 (GNU/Linux)
Comment: Using GnuPG with Mozilla - 
http://enigmail.mozdev.org
iD8DBQFFEwIl5sXXcRsFI+cRAmsPAJ9nGHws0U58JVrQAt5Ja1dUARbK/QCfS7t5
Xf9bIAPAr7VZup1MDQacia4=
=x4nh
-----END PGP SIGNATURE-----

 software di questo tipo.
CVS perň č piů lento di Subversion, giusto?


 
Dell'attenzione ;-)

CVS però è più lento di Subversion, giusto?
Non credo, tu hai qualche info a riguardo?

quello...ma in questo caso non va bene.
Se non va bene CVS o SVN, difficile che vada bene altro software di
questo tipo, comunque...

 tipo, comunque...
Ma infatti a me più che un VCS vero e proprio serve una specie di rsync
"intelligente". Non è importante poter gestire branches, tags e cose
simili, quello che mi preme è:
- poter fare un "commit" solo dei files realmente modificati, a
prescindere dalla data
- poter inviare tramite rete solo le modifiche ai file
- avere un piccolo "storico" dei commit effettuati
Qualcosa che con un po'di codice python e rsync si fa in relativamente
poco tempo, e se non c'è qualcosa già "pronto" mi sa che mi conviene farlo :-)

 Non credo, tu hai qualche info a riguardo?
No appunto, magari mi sbaglio :-)


 No appunto, magari mi sbaglio :-)
Ah, ok.  No, è che per come hai posto la domanda, lasciavi intendere che
hai informazioni a riguardo ;-)
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 - avere un piccolo "storico" dei commit effettuati
I sistemi VCS che ti sono stati elencati fanno anche questo, non so
esattamente quali siano i limiti che incontri, ma oggigiorno mi è
veramente difficile riconoscere un'esigenza del tutto nuova, per la quale
servano soluzioni particolari.  Al posto tuo, mi sforzerei di capire
quanto bene si può adattare ciò che c'è al tuo caso, rischi di fare del
lavoro inutile...


 cominciando a diffondersi anche questo sistema).
C'e` da dire che svn gestisce meglio i binari (CVS memorizza tutto il file
quando lo modifichi, svn solo le differenze, a meno che non sia piu`
pesante che memorizzare tutto il file).
Gestisce meglio anche le versioni, marcando tutti i file quando fai un
commit (che tra l'altro sono atomici, a differenza di cvs). Se sai che il
tuo progetto alla versione 1234 funzionava e hai modificato 3 file e ora
non funziona piu`, quei tre file avranno versione 1235, ma a te basta
sapere di recuperare la 1234 per riportarlo in vita. Non ti serve sapere
che altri 5 file hanno versione 1143 o 121 o 1.
In cvs devi fare un tag per farlo, in svn non serve. Ogni revision e` un
tag. Per questo non hanno pensato a un sistema di tagging alternativo.
Ha un vantaggio non indifferente: si puo` usare il suo server (svnserve)
oppure andare via web, ed entrambi possono essere crittati con SSH o SSL.
La filosofia e` abbastanza diversa da dare dei vantaggi, e abbastanza
simile da non dare troppe rogne, per chi arriva da CVS.
Io mi ci trovo benone, e l'unico limite, per ora, e` la minore diffusione,
che implica anche minori interfacce, soprattutto per piattaforme
"alternative" (Windows e Mac).
Bye.

 "alternative" (Windows e Mac).
Sotto Windows c'č TortoiseSVN, io uso la versione per CVS e mi trovo
benissimo!...


 benissimo!...
Io ho a che fare con grafici che usano WinCVS (e per fortuna almeno
quello l'hanno imparato), e puo` essere dura fargli cambiare interfaccia. :)
Bye.