CVS
CVS ist die Abkürzung für Concurrent Versions System. Es dient der Verwaltung von Dokumenten mit kompletter Änderungshistorie. Dokumente sind dabei meist Quellcode.
Mehr über CVS siehe Wikipedia
CVS im Fakultätsnetz
Ein CVS-Repository kann theoretisch jeder Benutzer in einem Verzeichnis seines Homedirectories anlegen.
Anmerkung: $CVSREPO soll hier ein Verzeichnisname sein, in dem das Repository liegen soll, z.B.: CVSREPO="Sem6_VerteilteSysteme"
mkdir ~/$CVSREPO cvs -d ~/$CVSREPO init
Will man das Repository mit einer Arbeitsgruppe teilen, empfiehlt es sich eine eigenen UNIX-Gruppe im CS-Netz anzulegen, man muss dann dieser Gruppe Leserechte und Schreibrechte für das Repository-Verzeichnis geben und das Gruppen-Sticky-Bit (chmod g+s) für das Verzeichnis setzen, bevor man das Repository initialisiert.
Leider gibt es bei der Sache einen Haken:
Das cvs-Programm ruft auf den Servern die Funktion getcwd() auf. Diese schlägt unter Solaris aber offenbar fehl, wenn irgendein Teil des Pfades nicht lesbar ist. Das bedeutet, dass Ihr allen Gruppen, die auf Euer Repository zugreifen wollen Leserechte für Euer Homeverzeichnis geben müsst . (im Zweifel also all...)
chmod 755 $HOME
Auf jeden Fall sollte man das sticky-bit auf das Repository-Verzeichnis setzen, damit dor von den anderen Gruppenmitgliedern angelegt Dateien auch der Gruppe gehören...
chmod 2770 ~/$CVSREPO
Diese Probleme (und eine Reihe anderer) treten bei der Nutzung von Subversion (svn) nicht auf!