Einrichten und Benutzen eines CVS-Repository

Ein CVS-Repository ist schnell eingerichtet und erleichtert das Arbeiten mit gleichen Quelltexten auf verschiedenen Rechnern ungemein.

Hier das Rezept für Unix-Derivate:

Als Root:

  1. Gruppe und Benutzer anlegen, z.B. unter FreeBSD pw add user cvsd; pw add group cvsd
  2. Verzeichnis für das spätere Repisitory anlegen, z.B. mkdir /local/cvs
  3. Benutzer und Gruppe zuordnen: chown -R cvsd:cvsd /local/cvs
  4. Schreibrechte für die Gruppe geben: chmod -R ug+xrw /local/cvs
  5. Alle User, die das CVS benutzen dürfen, in die Gruppe cvsd packen

Als User:

  1. .profile bearbeiten: $EDITOR ~/.profile
  2. Variable VSEDITOR definieren, z.B. ``export VSEDITOR=vi`
  3. Variable CVSROOT definieren, z.B.: export CVSROOT=:ext:USER@RECHNER:/local/cvs
  4. Variable_RSH definieren, z.B. CVS export CVS_RSH=ssh
  5. abspeichern, ausloggen, einloggen, evtl. mit echo $CVSROOT Zuordnung prüfen
  6. cvs init
  7. Ins Projektverzeichnis wechseln, z.B. cd /local/projects
  8. Alle Dateien ins Repisitory aufnehmen: cvs import -m "Neues Test-Repisitory" MODUL PROJEKTNAME VERSION

Fertig, nun kann mit dem CVS gearbeitet werden:

Befehl Beispiel Erklärung
cvs checkout <module> cvs checkout test checked Modul mit dem Namen test aus, und packt es in das Verzeichnis ./test
cvs commit [ -m LOG-EINTRAG ] MODUL cvs commit -m "Neue Version mit tollem Feature" test Modul test wird in das Repository zurückgestellt
cvs update cvs update Änderungen, die eingecheckt worden sind, übernehmen (geschieht beim Commit automatisch)
cvs add DATEI cvs add test.php Datei test.php wird dem aktuellen Repository zugefügt. Abschließend das Kommando cvs commit ausführen.

Anmerkung

Für diese Einrichtung ist ein lokaler Account für jeden Benutzer erforderlich. Sicherer ist ein CVS-Daemon (cvsd), der in einem chroot läuft. Für diesen können eigene Accounts angelegt werden und auch verschiedene anonymisierte Zugänge sind möglich.