PDA

View Full Version : TortoiseHg o SVN?


lona79
03-09-2008, 09:35
C'è nessuno che li usa?

Mi sapete dare una dritta?

Grazie

cdimauro
03-09-2008, 13:01
Che ci devi fare? Devi accedere a un server SVN o Mercurial?

Io uso TortoiseSVN su Windows e mi trovo benissimo, ma... perché ovviamente mi serve per accedere a un server SVN.

Mercurial è un altro software di versioning, con un suo protocollo.

lona79
03-09-2008, 13:35
Bè intanto cercavo qualcuno che mi rispondesse ....

Dunque, premesso che di server non me ne intendo, la mia situazione attuale è questa:

- ho un pc server (Windows Server 2003), dove ho tutti i progetti divisi in questo modo:

- C:\
--- Commesse
----- Cliente1
------- Progetto1
--------- 2008-01-01
--------- 2008-03-18
--------- ecc
------- Progetto2
--------- 2007-12-10
--------- 2008-02-02
----- Cliente2
------- Progetto1
--------- 2006-09-13
--------- 2007-05-27
--------- 2008-04-04
--------- 2008-05-12
eccetera .....

abbiamo 4 pc portatili dove ognuno lavoro ad un progetto diverso (rare volte lavoriamo in più di una persona sullo stesso progetto ... però non si sa mai).
Per i nuovi progetti di solito non ci sono problemi perchè quello che inizia si fa la sua cartella sul proprio pc, finisce il lavoro e poi la copia sul server.
E' quando c'è da fare modifiche su quelli vecchi il problema: supponiamo che tocca a me, devo: copiarmi la cartella con l'ultima data dal server, sperare che sia effettivamente l'ultima, e fare le modifiche senza sapere quelle già fatte perchè non abbiamo un log.

i sistemi che ho menzionato ci servono più che altro per tenere traccia delle varie modifiche fatte ed essere sicuri di avere le ultime versioni corrette.

Voi cosa ci consigliereste?


Grazie

cdimauro
03-09-2008, 19:56
Personalmente, come ti dicevo, uso SVN perché in azienda abbiamo scelto questo strumento per realizzare il repository in cui depositare tutti i progetti, e mi trovo molto bene (specialmente con TortoiseSVN: è una manna dal cielo).

Comunque ho sentito parlare molto bene anche di Mercurial e Bazaar, ma non li ho mai provato e non posso "garantire" per loro. :p

dupa
03-09-2008, 20:09
i sistemi che ho menzionato ci servono più che altro per tenere traccia delle varie modifiche fatte ed essere sicuri di avere le ultime versioni corrette.

Voi cosa ci consigliereste?


Grazie
considerando come gestite attualmente ai progetti, pasasre a subversion sarebbe già un salto nel "futuro".

riguardo mercurial, nn lo conosco, mi pare serva per avere versioning distribuito, senza un server centrale (se non ricordo male).

in ogni caso nel 99% dei casi subversion va benissimo.

lona79
03-09-2008, 21:02
Dalle prove che ho fatto con SVN su una macchina virtuale però, ho visto che dove creo il repository del progetto (quindi sul server) non vedo la mia attuale struttura:

------- Progetto1
--------- 2008-01-01
--------- 2008-03-18
--------- ecc

ma vedo delle cartelle create da SVN. Questo ci crea un pò di "disagio" in quanto siamo abituati ora che se a qualcuno serve per esempio il "Progetto1" si collega al server e si copia la cartella.

Come vengono usati di solito questi VCS ? Voi come li usate?

cdimauro
03-09-2008, 21:09
Questo è stranissimo: io nel repository (quindi nel server centrale) vedo esattamente quello che ho copiato.

Al più nelle MIE cartelle locali vedo una cartella nascosta .svn dove SVN mantiene le informazioni che gli servono.

x dupa: sì, Mercurial è un sistema di versioning distribuito, senza server centrale.

dupa
03-09-2008, 21:19
Dalle prove che ho fatto con SVN su una macchina virtuale però, ho visto che dove creo il repository del progetto (quindi sul server) non vedo la mia attuale struttura:

------- Progetto1
--------- 2008-01-01
--------- 2008-03-18
--------- ecc

ma vedo delle cartelle create da SVN. Questo ci crea un pò di "disagio" in quanto siamo abituati ora che se a qualcuno serve per esempio il "Progetto1" si collega al server e si copia la cartella.

Come vengono usati di solito questi VCS ? Voi come li usate?

secondo me nn hai molta idea di quello che stai facendo.
per prima cosa devi creare un repository in una cartella vuota nel punto del disco dove vuoi andare a memorizzare lo storico dei tuoi file.

quando hai creato un repository ci puoi acceder localmente file:// oppure via http:// oppure tramite svn:// se hai lanciato il demone svnserve
a quel punto crei per ogni tuo progetto una cartella con le sottocartelle /trunk /branches /tags
la linea principale di sviluppo sta su trunk, le linee secondarie su branches e poi mergi su trunk e infine puoi marchiare certe revisioni con numeri di versione tra i tags.

cmq leggiti l'svn book che è meglio

lona79
03-09-2008, 22:03
Questo è stranissimo: io nel repository (quindi nel server centrale) vedo esattamente quello che ho copiato.


Allora mi sa che devi leggere l'svn book anche tu :D

Infatti nella traduzione italiana al "capitolo.1 - Un rapido inizio", riguardo al repository creato c'è scritto:

"Ora il repository contiene questa struttura di directory. Come citato prima, non vedreste i vostri file sbirciando direttamente nel repository; sono tutti memorizzati all'interno di un database."

Mi sa che ti tocca leggere :D :D :D

-----------

x DUPA:
si è vero che posso leggermi tutto l'svn book, chiedevo a voi semplicemente per sapere se per quello che devo fare io vale la pena che lo legga o mi serve un altro sistema.

cdimauro
04-09-2008, 07:18
Attenzione: è vero che fisicamente tutti i dati del repository sono conservarti in un database (infatti se vai sul server e cerchi qualcosa, ti attacchi: non c'è traccia dei file dei progetti), ma quando parlo di "vedere il repository" ovviamente mi riferisco all'uso di TortoiseSVN per effettuarne il browsing. ;)

tomminno
04-09-2008, 07:36
Dalle prove che ho fatto con SVN su una macchina virtuale però, ho visto che dove creo il repository del progetto (quindi sul server) non vedo la mia attuale struttura:

------- Progetto1
--------- 2008-01-01
--------- 2008-03-18
--------- ecc

ma vedo delle cartelle create da SVN. Questo ci crea un pò di "disagio" in quanto siamo abituati ora che se a qualcuno serve per esempio il "Progetto1" si collega al server e si copia la cartella.

Come vengono usati di solito questi VCS ? Voi come li usate?

Sul server trovi i dati che servono a SVN per gestire il versioning, ci sono i file per gestire i permessi di accesso al repositorio e il db.
SVN non memorizza i file direttamente ma usa un db per mantenere traccia delle modifiche.

lona79
04-09-2008, 07:38
Attenzione: è vero che fisicamente tutti i dati del repository sono conservarti in un database (infatti se vai sul server e cerchi qualcosa, ti attacchi: non c'è traccia dei file dei progetti), ma quando parlo di "vedere il repository" ovviamente mi riferisco all'uso di TortoiseSVN per effettuarne il browsing. ;)

Bè allora ok. Ma nel mio messaggio di prima chiedevo proprio perchè non vedo i file "fisici" ...

Domanda: con SVN se non posso collegarmi al server, nella mia cartella di lavoro vedo comunque tutto il filelog con tutte le modifiche? o devo collegarmi appunto al server?

cdimauro
04-09-2008, 08:05
Se non ricordo male, per vedere tutte le modifiche devi collegarti al server.

lona79
12-09-2008, 22:25
Ok, ho deciso per HG.
Adesso mi servirebbe però un bug tracker distribuito per windows .... c'è qualcuno che ne sa qualcosa? :mc:

nico159
12-09-2008, 22:34
Ok, ho deciso per HG.
Adesso mi servirebbe però un bug tracker distribuito per windows .... c'è qualcuno che ne sa qualcosa? :mc:

Trac :cool: http://trac.edgewall.org

EDIT: scusa, credevo avessi scelto Subversion