CVS-Server
Konfiguration #default: off service cvspserver { disable = no socket_type = stream protocol = tcp wait = no user = root server = /usr/bin/cvs server_args = -f --allow-root=/usr/data/cvs_repos pserver log_on_failure += USERID }
Mitunter stirbt cvs beim ein/auschecken von sehr großen Dateien wegen zu wenig RAM. Um das zuverhindern sollte ein tmp-Verzeichnis mit genug Platz festgelegt werden. ... server_args = -f -T /iscsi/tmp --allow-root=/my/cvsdirectory/cvs_repos pserver log = /var/log/cvslog ...
Das Volume muss natürlich vorhanden und gemountet sein. /etc/init.d/xinetd restart CVS-Repo initialisieren und befüllen: cvs -d /my/cvsdirectory/cvs_repos init Jetzt testweise ein erstes Verzeichnis anlegen und das Repo befüllen: mkdir myCVSTree echo "erster Eintrag von ich">/myCVSTREE/ersteDatei.txt cd myCVSTree cvs import -m "erster Initialload von ich" myCVSTree rb start
jetzt sollte das Repo erstellt werden. Das alte Verzeichnis kann dann wieder gelöscht werden. rm -rf myCVSTree
Eventuell gibt es manchmal Zugriffsprobleme wenn ein anderer Benutzer zum Starten des CVS-Programms benutzt wird.
neuen Benutzer im CVS anlegen: cvscrypt.pl doedel geheim cvs
wenns klappt dann übernehmen: cvscrypt.pl doedel geheim cvs >>/my/cvsdirectory/cvs_repos/CVSROOT/passwd
Hier die Datei cvscrypt.pl:
testen des neuen Accounts von einem beliebigen Client aus: #windows set CVSROOT=:pserver:cvsdoedel:geheim@mycvsserver:/my/cvsdirectory/cvs_repos #linux export CVSROOT=:pserver:cvsdoedel:geheim@mycvsserver:/my/cvsdirectory/cvs_repos cvs login cvs checkout myCvsTree Zugriff auf das Repo lokal: cvs -d :local:/my/cvsdirectory checkout myCVSTree Zugriff auf das Repo per ssh: export CVS_RSH="ssh" cvs -d :ext:cvsdoedel@mycvsserver:/my/cvsdirectory/cvs_repos checkout myCvsTree cvsdoedel@mycvsserver's password: Der Vorteil ist hierin, dass es mit Gruppen über ssh steuerbar ist.
set CVSROOT=:pserver:cvsdoedel:geheim@mycvsserver:/my/cvsdirectory/cvs_repos cvs login cvs history -a |