PDA

View Full Version : [cvs o svn] Mi date qualche indicazione


wisher
19-04-2007, 20:27
Ciao a tutti, per il corso di ingegneria del software io e un mio compagno dobbiamo realizzare un progetto (Il gioco del Monopoli).
Sarebbe molto comodo avere la possibilità di mantenere i sorgenti in un pc remoto, in modo da avere sempre la versione aggiornata ed evitare perdite di tempo e confusione con le sincronizzazione.
Avete qualche consiglio considerando che:
-sviluppiamo utilizzando Eclipse (che ho visto ha il supporto per cvs)
-se necessario possiamo tenere noi il programma su un serverino, ma sarebbe preferibile hostarlo su un servizio esterno (mi viene in mente che sourceforge dovrebbe consentirli).

vizzz
19-04-2007, 20:49
tra i due sceglierei sicuramente svn...molto meno ostico e potente.

wisher
19-04-2007, 21:34
tra i due sceglierei sicuramente svn...molto meno ostico e potente.
Come si integra svn con eclipse? C'è qualche plug-in?

vizzz
19-04-2007, 21:45
Come si integra svn con eclipse? C'è qualche plug-in?

che io sappia no...ma se lavori con windows guarda tortoiseSVN
http://tortoisesvn.tigris.org/

c'è anche un client carino per linux (oltre a svn via linea di comando)

VICIUS
19-04-2007, 21:47
Il plugin per eclipse si chiama subclise. Lo trovi su tigris assieme a tortoise.

ciao ;)

vizzz
19-04-2007, 22:03
Il plugin per eclipse si chiama subclise. Lo trovi su tigris assieme a tortoise.

ciao ;)
ah fico non l'avevo mai notato :D

wisher
19-04-2007, 22:18
Allora mi pare che SVN si possa considerare aggiudicato.
Il plug-in di eclipse si comporta bene?

Per quanto riguarda l'hosting è preferibile un sito esterno o un serverino casalingo?

vizzz
19-04-2007, 22:21
Allora mi pare che SVN si possa considerare aggiudicato.
Il plug-in di eclipse si comporta bene?

Per quanto riguarda l'hosting è preferibile un sito esterno o un serverino casalingo?
se non lavorate nello stesso posto sarebbe carino un server esterno da cui potete accedere da dove volete...se avete soldi da spendere un serverino in housing...altrimenti un pc attaccato ad una delle vostre adsl potrebbe andare

^TiGeRShArK^
19-04-2007, 22:55
Allora mi pare che SVN si possa considerare aggiudicato.
Il plug-in di eclipse si comporta bene?

Per quanto riguarda l'hosting è preferibile un sito esterno o un serverino casalingo?

zizzì :O
lo usavamo per diamonds e non ha mai dato problemi (anzi a dir la verità alcuni problemi li dava la versione standalone di tortoise SVN se utilizzato insieme ad eclipse e mal configurato :muro: )

marco.r
20-04-2007, 00:30
Ciao a tutti, per il corso di ingegneria del software io e un mio compagno dobbiamo realizzare un progetto (Il gioco del Monopoli).
Sarebbe molto comodo avere la possibilità di mantenere i sorgenti in un pc remoto, in modo da avere sempre la versione aggiornata ed evitare perdite di tempo e confusione con le sincronizzazione.
Avete qualche consiglio considerando che:
-sviluppiamo utilizzando Eclipse (che ho visto ha il supporto per cvs)
-se necessario possiamo tenere noi il programma su un serverino, ma sarebbe preferibile hostarlo su un servizio esterno (mi viene in mente che sourceforge dovrebbe consentirli).

Visto che siete in due perche' non usare un software di revision control distribuito ? Ognuno dei due ha in pratica una copia del repository, e vi scambiate le modifiche (anche via mail). Ce ne sono diversi, come Monotone, Git e Darcs. Quest'ultimo e' abbastanza semplice mi piace molto, anche se dubito che ci sia un plugin per Eclipse.

wisher
20-04-2007, 08:16
Visto che siete in due perche' non usare un software di revision control distribuito ? Ognuno dei due ha in pratica una copia del repository, e vi scambiate le modifiche (anche via mail). Ce ne sono diversi, come Monotone, Git e Darcs. Quest'ultimo e' abbastanza semplice mi piace molto, anche se dubito che ci sia un plugin per Eclipse.
In effetti SVN è molto sovradimensionato per quello che dobbiamo fare, ora guardo i programmi che mi hai linkato.
Grazie della segnalazione

matrix845
24-04-2007, 00:32
ragazzi , scusate se mi intrometto , ma mi trovo nella sua stessa situazione , ma soltanto un po variegata , dato che devo condividere con altri 4 amici , su piattaforme client windows e mac diversi file , sia codice web ,immagini che file photoshop/illustrator , quale potrebbe essere secondo voi la soluzione ai miei problem?
Avevo pensato di usare hanamchi per creare una vpn e poi di usare cvs....:rolleyes:
Grazie:)

lovaz
24-04-2007, 08:48
Per i binari (e non solo) meglio subversion...

matrix845
24-04-2007, 11:18
gentilmnte sapreste indicarmi come metetre su una gestione svn tra pc sparsi sul territorio italiano?:D
Pensavo di creare una lan virtuale con hamachi e usare un server svn o bastano i client???
help please:cry:

lovaz
24-04-2007, 11:24
Non ho mai provato, ma da quanto ne so basta un server web apache
con modulo subversion, dettagli qui:

http://svnbook.red-bean.com/

matrix845
24-04-2007, 11:29
tnx , vedro cosa ne esce fuori:D

marco.r
25-04-2007, 09:17
Non ho mai provato, ma da quanto ne so basta un server web apache
con modulo subversion, dettagli qui:

http://svnbook.red-bean.com/
Molto piu' semplice usare il svnserve pero'... a meno che non apache serva anche per altre cose (usare svn con trac ad esempio) il server web mi sembra un po' overkill

cionci
26-04-2007, 08:05
Molto piu' semplice usare il svnserve pero'... a meno che non apache serva anche per altre cose (usare svn con trac ad esempio) il server web mi sembra un po' overkill
Concordo...svnserve si lancia tranquillamente da xinetd... In giro si trovano diversi esempi di configurazione... Se avete bisogno del file di configurazione di xinetd fate un fischio ;)

matrix845
27-04-2007, 00:43
Concordo...svnserve si lancia tranquillamente da xinetd... In giro si trovano diversi esempi di configurazione... Se avete bisogno del file di configurazione di xinetd fate un fischio ;)
Cionci , vedo che ne sai su subversion , ti spiego...io ho una vps linux su base centos , posso installarci la robaccia che mi pare , solo che qui sopra ci girano gia 3 siti , mettendo il subversion romperei le palle a questi siti?
Grazie

cionci
27-04-2007, 06:35
No, vai tranquillo, non spreca un gran che...a meno che non siate in 20 a lavorare sul progetto, ovviamente...

matrix845
27-04-2007, 10:25
No , siamo 7 in un team , tanto non è che pesi chissa quanto...poi ho 2 mega flat sul server:D
p.s. hai qualke link su come si installa o altri tipi di guide?
Perchè i collaboratori con la programmazione sono un po i litigio , quindi vogliono tutte gui!:fagiano:

marco.r
27-04-2007, 13:04
http://svnbook.org/

in particolare


http://svnbook.red-bean.com/nightly/en/svn.serverconfig.svnserve.html

Dal lato server niente gui, ci sono pero' diversi frontend per i client. Li dipende cosa usi, ci sono plugin per eclipse, programmi standalone.
Sotto Windows quello che mi piace di piu' e' tortoisesvn (http://tortoisesvn.tigris.org) che si integra perfettamente con Explorer.

cionci
27-04-2007, 13:42
Grande marco.r...e proprio il link che volevo dare io ;)
Una volta creato il repository con svnadmin, basta inserire questo flle in /etc/xinetd.d con il nome svn...

# Begin /etc/xinetd.d/svn

service svn
{
port = 3690
socket_type = stream
protocol = tcp
wait = no
user = svnuser
server = /usr/bin/svnserve
server_args = -i -r /path/del/repository
}

# End /etc/xinetd.d/svn

svnuser è l'utente con il quale il servizio gira...ne conseguiranno i permessi da assegnare alle directory del repository...

matrix845
27-04-2007, 20:37
Grazie ragazzi...provero , anche se mi risultera un po complesso , vedremo come ne esco fuori:D

cionci
28-04-2007, 00:52
Nooo...tutt'altro...basta il comando da tastiera per la creazione del repository e la configurazione dei file d'accesso...

Per creare il repository:

svnadmin create /path/del/repository

Poi all'interno del path del repository troverai il file conf/svnserve.conf che risulterà qualcosa di questo tipo:

[general]
password-db = nome_del_file_delle_password
realm = Nome del repository

# anonymous users aren't allowed
anon-access = none

# authenticated users can both read and write
auth-access = write

Ora basta creare il file indicato in password-db all'interno sempre della directory conf nel repository...il file conterrà:

[users]
nome_utente1 = password_utente1
nome_utente2 = password_utente2

e così via...

Ora basta appunto avviare svnserve da xinetd ed è già finito...

marco.r
29-04-2007, 02:26
Grazie ragazzi...provero , anche se mi risultera un po complesso , vedremo come ne esco fuori:D

Penso sia difficile trovare qualcosa di meno complicato, anche perche' cionci ti ha gia' detto tutto...
un riga per creare il repository
un file di testo (gia' pronto o quasi) per configurare gli utenti
lanciare il servizio, che e' la cosa piu' complicata, ma a seconda della distribuzione che usi potrebbe essere una cavolata.
Col mio FreeBSD ad esempio mi basta una riga in rc.conf per attivare il servizio e sono a posto. In Gentoo basta una riga di rc-update...
(per inciso, che sistema operativo usi ?)

fedo
01-05-2007, 11:29
come plugin Eclipse ho trovato migliore SubVersive di Polarion, rispetto SubEclipse.

ciao

matrix845
05-05-2007, 16:33
Penso sia difficile trovare qualcosa di meno complicato, anche perche' cionci ti ha gia' detto tutto...
un riga per creare il repository
un file di testo (gia' pronto o quasi) per configurare gli utenti
lanciare il servizio, che e' la cosa piu' complicata, ma a seconda della distribuzione che usi potrebbe essere una cavolata.
Col mio FreeBSD ad esempio mi basta una riga in rc.conf per attivare il servizio e sono a posto. In Gentoo basta una riga di rc-update...
(per inciso, che sistema operativo usi ?)
Perdonate il ritardo....allora a casa uso Ubuntu , invece i server sono Centos o Debian


Grazie:)

cionci
05-05-2007, 18:20
Perdonate il ritardo....allora a casa uso Ubuntu , invece i server sono Centos o Debian
Io l'ho installato su Ubuntu server...credo che per Debian sia la stessa cosa:

sudo apt-get install xinetd subversion

e sei a posto...ti manca solo di dare i comandi sopra e creare il file di configurazione...

Dopo per accedere al repository usi l'url: svn://indirizzoip/

matrix845
05-05-2007, 20:02
Grazie cionci....dopo provo su vmware!:D

matrix845
05-05-2007, 21:46
Su ubuntu server virtualizzato mi dice che il pacchetto xinetd ha altre dipendenze che non riesce a risolvere!
Ho fatto apt-get update/upgrade , senza risultati..sempre uguale!:cry:

cionci
06-05-2007, 09:32
Su ubuntu server virtualizzato mi dice che il pacchetto xinetd ha altre dipendenze che non riesce a risolvere!
Com'è possibile...a me ha funzionato tutto senza il minimo problema :confused:

matrix845
06-05-2007, 12:25
Dopo uso una macchina reale con ubuntu...
ops gia che ci penso la VM è desktop con aggiunta pacchetti a mano di tipologia server....dopo provo sia fisco che reale con una versione server nativa!:sofico:

Scusate la scemenza :fagiano:

matrix845
06-05-2007, 19:56
allora compiliamo questo semplice how to:
1)Installate ubuntu server
2)date il cmd: sudo apt-get install xinetd subversion
chiederà il cd oppure scaricherà da internet
3)Per creare il repository:

svnadmin create /path/del/repository

Poi all'interno del path del repository troverai il file conf/svnserve.conf che risulterà qualcosa di questo tipo:

[general]
password-db = nome_del_file_delle_password
realm = Nome del repository

# anonymous users aren't allowed
anon-access = none

# authenticated users can both read and write
auth-access = write

Ora basta creare il file indicato in password-db all'interno sempre della directory conf nel repository...il file conterrà:

[users]
nome_utente1 = password_utente1
nome_utente2 = password_utente2



Poi?Come autoavvio il servizio?che altre procedure bisogna fare?
Al punto tre , il file password-db che estensione bisogna dargli?
Grazie mille e scuate la rottura!:fagiano:

cionci
06-05-2007, 20:38
Per avviarlo te l'ho scritto sopra...devi creare il file che ti ho incollato in /etc/xinet.d

Nessuna estensione per il file delle password...

cionci
06-05-2007, 20:47
L'unica cosa da "manipolare" sono i permessi per i file...

Come ti ho detto, quello che è indicato come "svnuser" è il nome utente che deve avere tutti i permessi sui file all'interno del repository...

Aggiungi un utente:

sudo adduser --group snvuser

Cambi i permessi nel repository:

sudo chown -R svnuser:svnuser /path/del/repository

In questo modo dovrebbe essere tutto pronto...basta riavviare xinetd:

sudo /etc/init.d/xinetd restart

Verifichiamo che il servizio sia attivo:

telnet localhost 3690

Se la connessione si attiva allora siamo a posto...
Ad ogni avvio il servizio ti verrà avviato automaticamente...

matrix845
07-05-2007, 00:06
Ciao ragazzi , allora ormai mi sono incaponito....
linux ubuntu 6.10 server edition coon servizi LAmp e dns preinstallati

Bene , faccio apt-get install xinetd subversion
e va
creo il repository:
svnadmin create /path/del/repository

Poi all'interno del path del repository troverai il file conf/svnserve.conf che risulterà qualcosa di questo tipo:

[general]
password-db = nome_del_file_delle_password
realm = Nome del repository

# anonymous users aren't allowed
anon-access = none

# authenticated users can both read and write
auth-access = write

Ora basta creare il file indicato in password-db all'interno sempre della directory conf nel repository...il file conterrà:

[users]
nome_utente1 = password_utente1
nome_utente2 = password_utente2

Bene , adesso vado nella cartella xinetd e creo il file svn mettendo questa robetta:
# Begin /etc/xinetd.d/svn

service svn
{
port = 3690
socket_type = stream
protocol = tcp
wait = no
user = svnuser
server = /usr/bin/svnserve
server_args = -i -r /path/del/repository
}

# End /etc/xinetd.d/svn


Benissimo adesso vado di :
Aggiungi un utente:

sudo adduser --group snvuser

Cambi i permessi nel repository:

sudo chown -R svnuser:svnuser /path/del/repository

In questo modo dovrebbe essere tutto pronto...basta riavviare xinetd:

sudo /etc/init.d/xinetd restart

Verifichiamo che il servizio sia attivo:

telnet localhost 3690


ma mi dice connetcion refused....ho rifatto la procedura varie volte...vado bene cosi?
Dove sbaglio?
con svn://mioip/ dice bash: no such file or directory



Dove sbaglio :cry:

cionci
07-05-2007, 07:57
svn://mioip/
Lo devi mettere da dentro Eclipse quando ti chiede l'url del repository...
Sicuro d'averlo creato qui il file svn ? /etc/xinetd.d/
Prova a lanciare il server svn da riga di comando:

sudo svnserve -r /path/del/repository

E prova dopo a connetterti a con il telnet:

telnet localhost 3690

matrix845
07-05-2007, 10:43
fatto svnserver -r /path/repo
e mi dice
"You must specific exactly one of -d -i -t or -x !

non c sto piu capendo molto...:O

cionci
07-05-2007, 10:57
sudo svnserve -d -r /path/del/repository &

Sorry ;)

cionci
07-05-2007, 11:05
Dammi l'output di questi comandi:

sudo netstat -apn | grep xinetd

ps aux | grep xinetd

matrix845
07-05-2007, 11:21
tutti i comandi fatti come toot:svnserve -d -r pat
risposta
can't bind server sosket ?\197?\158B?\214?\183?\220

ops...mentre scrivevo mi sono accorto di non sapere andare su con le pagine nella shell , quindi per postarti le cose dovrei fare 2 screenshot , dato che non si fa copia incolla da Vm linux a Hm Windows....
come faccio a posatrti le cose?:cry:

Il comando sudo netstat apn ... come si fa la barra verticale?:doh:

A me lo esegue anche senza...

Coinci grazie 100000000000000000 della disponibilità!:)

cionci
07-05-2007, 11:31
Il fatto che non possa fare il bind sul socket è significativo...quindi sembra già in esecuzione...

Sicuro di aver scritto bene il comando di telnet ?

telnet localhost 3690

Per quei comandi ti semplifico un po' la vita, l'output dovrebbe essere così:

sudo netstat -apn | grep xinetd
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 3714/xinetd
unix 2 [ ] DGRAM 12480 3714/xinetd

ps aux | grep xinetd
root 3714 0.0 0.3 2352 864 ? Ss 11:59 0:00 /usr/sbin/xinetd -pidfile /var/run/xinetd.pid -stayalive
cionci 3975 0.0 0.3 2880 748 pts/0 R+ 12:33 0:00 grep xinetd

matrix845
08-05-2007, 01:54
il comando telnet l'ho scritto bene....non so come si fa la sbarra orizzonatle che sembra una l :fagiano:
dopo di che mi metto sotto con i comandi:)

cionci
08-05-2007, 07:26
La barra orizzontale è sopra lo \ nella tastiera italiana...
A me viene il dubbio che sia già in esecuzione perché il motivo per cui non ti fa avviare svnserve da riga di comando è che il socket è già occupato...
Allora prova da Eclipse, dopo aver installato il plugin SVN.
L'update site (quello da mettere in Eclipse come "Remote Site") per il plugin è: http://subclipse.tigris.org/update_1.2.x

Un volta installato fai: Window -> Show View -> Other -> SVN Repository e lì aggiungi: svn://ipdelserver/ (attento a username e password).
Prima ti crei un progetto base in locale su Eclipse del tipo che ti interessa, riavvi Eclipse (così ti salva tutto)...poi clicki sul server svn appena aggiunto con il pulsante destro, New -> New remote folder ed aggiungi una directory chiamata trunk (che solitamente è il nome la directory principale di sviluppo). Clicki con il destro su trunk -> Export e scegli la directory del progetto appena creato.
In questo modo verrà trasferita sul server.
Elimini il progetto da Eclipse. Lo elimini/rinomini/sposti dalla directory del workspace. Riavvii Eclipse.
Selezioni il server svn, poi selezioni trunk, tasto destro -> Checkout -> Next...e ti verrà creato un nuovo progetto condiviso.
Ovviamente gli altri dovranno fare solo quest'ultimo passaggio.