Newsgroup: it.comp.os.linux.sys
Titolo: CVS

Sto usando CVS per fare ordine nei miei sorgenti, e per usare macchine
diverse. Usato in locale non ho problemi, funziona tutto come si deve.
Se invece lo uso in remoto, da un'altra macchina linux, con il
protocollo pserver non sempre funziona tutto. Non riesco a creare
directory nuove e ad aggiungere file, perche' ottengo sempre un errore
misterioso del tipo permission denied. C'e' qualche esperto
configuratore di cvs che ha voglia di darmi una mano...?
-- 

misterioso del tipo permission denied. C'e' qualche esperto
Quali sono i permessi della directory home del CVS? Qual e' l'owner?
Con che utente ti colleghi? E' lo stesso di quello che usi in locale?
Per creare dei moduli, devi avere il permesso di write nella
directory. Fai parte del gruppo owner della directory?

 directory. Fai parte del gruppo owner della directory?
Mmm, il gruppo owner della directory cvsroot e' root, non faccio parte
di quel gruppo. Se cerco di creare una directory sotto a prj, ci 
riesco solo in locale. In remoto collegato con pserver non ce la 
faccio. Se pero' la directory esiste gia', da remoto riesco a inserire
file.
-- 

file.
Questo e' giusto, per le directory che stanno in radice del
repository. E' specificato anche nel FAQ-O-Matic
http://www.loria.fr/~molli/fom-serve/cache/64.html
 . 
Devi creare la cartella e quindi inserire i file. E' per sicurezza: in
questo modo si impedisce a chiunque abbia accesso al pserver di creare
moduli nella root del CVS.
Hai impostato a g+w i file CVSROOT/history e CVSROOT/val-tags?

 prova a modificare il file CVSROOT/config 
Un chiarimento: se volessi modificare un file dentro a CVSROOT come 
dovrei fare? Ho visto che e' readonly, e che c'e' un config,v, quindi 
deduco che non sia il caso di modificarlo direttamente.
-- 

 Hai impostato a g+w i file CVSROOT/history e CVSROOT/val-tags?
history e' di proprieta' di root, val-tags invece non esiste (uso una 
debian, se puo' essere utile)
voyager:/cvsroot/CVSROOT$ ll history
-rw-rw-rw-    1 root     root          725 Aug 27 18:22 history
-- 

dovrei fare? Ho visto che e' readonly, e che c'e' un config,v, quindi 
Devi fare un checkout della CVSROOT con un utente che abbia i
permessi, qundi che appartenga in questo caso al gruppo root (ma che
non sia root, in quanto CVS non da l'accesso a questo utente per
sicurezza). Forse e' meglio cambiare il gruppo della CVSROOT da root a
cvsadmin, e assegnare all'utente roberto tale gruppo.

-rw-rw-rw-    1 root     root          725 Aug 27 18:22 history
Ok, l'importante e' che abia l'ultimo 'w'. Per val-tags, vai un
$touch val-tags
$chmod 666 val-tags
serve nel caso tu inserisca dei tag di release.

 errore che ti arriva dal cvs?
Ecco qua
roberto@eagle:/tmp/provacvs/prj$ mkdir crypto
roberto@eagle:/tmp/provacvs/prj$ cvs add crypto
Permission denied
-- 

 cvsadmin, e assegnare all'utente roberto tale gruppo.
Ho fattoun po' di prove, e adesso funziona, ma non capisco perche'...
Ho aggiunto roberto al gruppo root
ho fatto il checkout della CVSROOT e modificato config aggiungendo 
lockdir
ho provato a creare una directory, ed ha funzionato.
Allora sono tornato indietro, per capire quale fosse stata la modifica
giusta
Ho tolto lockdir, funzionava ancora
ho tolgo roberto dal gruppo root, funzionava ancora
ho tolto la directory /var/lock/CVSROOT, funziona ancora
Quindi dovrei essere tornato alla situazione iniziale, non capisco 
cosa ho fatto...
Comunque grazie!
-- 

Salve a tutti, sapete se e come e' possibile usare CVS da linea di comando
passando per un proxy che richiede autenticazione? un po'
wget --proxy-user=pippo --proxy-password=pluto?
Grazie molte



> Salve a tutti, sapete se e come e' possibile usare CVS da linea di comando
Ho solo io un'impressione di deja-vu ?
-- 
*  Greetings From Johnny L  *
"No necesitamos pedir permiso 
 para ser libres (Marcos)"
   -- Think Different --

passando per un proxy che richiede autenticazione? un po'
Non penso che sia possibile passare per un proxy: la comunicazione cvs
- cvspserver e' una connessione bidirezionale. 
Quello che vuoi e' forse un gateway sul firewall, tipo SOCKS?