Hoppa till huvudinnehållet
Institutionen för informationsteknologi

CVS-Server

CVS-servern är tänkt för mer långsiktig användning såsom projekt och exjobb eller när utomstående behöver tillgång till repositoryt och dom saknar konto på vårat UNIX-system.

Om du istället vill skapa ett mer temporärt repository, exempelvis för inlämningsuppgifter i en kurs, titta lite mer på informationen om lokalt cvs-repository istället.

SVN-server

Vi har numera en SVN (subversion) server också. Den är tänkt att helt eller delvis ersätta CVS. Fråga oss för mer information tills allt är klart och dokumenterat här. Man behöver ansöka om tillgång på samma sätt som för CVS och administratörerna sköter mer här än med CVS.

Skapa och hantera ett repository

Det första du måste göra är att be de systemansvariga att skapa ett repository åt dig på cvs-servern (skicka begäran via vårat ärendesystem).

  1. Tala om namnet på repositoryt
  2. Om du själv vill hantera användare
  3. Om du vill ha användare med bara läsrättigheter
  4. Om du vill ha anonym användare (användarnamn anonymous, tomt lösenord)

Skapa användare

För att kunna manipulera användardatabasen så måste du logga in på cvs.srv.it.uu.se.
Programmet för att skapa (och ta bort) användare heter /it/sw/gnu/sbin/cvsd-passwd. Observera att alla användarnamn och lösenord på cvs-server är helt skilda från unix-systemens behörighetskontroll.

För att skapa en användare eller byta lösenord:

% /it/sw/gnu/sbin/cvsd-passwd /it/cvs/repository användare

För att ta bort en användare:

% /it/sw/gnu/sbin/cvsd-passwd /it/cvs/repository -användare

Givetvis kan systemanvariga göra detta åt dig om du så önskar.

Skrivrättigheter

Du kan också välja om du vill skapa användare med bara läsrättigheter (ex. en anonym användare). Hanterar du användarna själv så ber du systemansvariga att skapa en fil /it/cvs/repository/CVSROOT/writers där du sedan lägger in dom användare du vill skall ha skrivrättigheter.

Spegla repository för anonym åtkomst

Det är även möjligt att spegla ett befintligt repository som ligger på filsystemet och därmed erbjuda anonym läs-åtkomst. Det är däremot inte möjligt att dela ut ett befintligt repository med skrivrättigheter utan att flytta över hela repositoryt till /it/cvs/.

Använda ett repository

Som CVSROOT skall följande anges

:pserver:användare@cvs.srv.it.uu.se:/repository

Tänk på att denna trafik går okrypterad över nätet. För att få en krypterad uppkoppling så har vi satt upp en ssl-krypterad server på port 2405.

Krypterad förbindelse via ccvssh

Det rekommenderade sättet att utnyttja detta är att installera ccvssh och använda den istället för rsh via CVS_RSH. När man använder ccvssh skall man ange :ext: iställer för :pserver:.

Exempelvis:

   % export CVSROOT=":ext:username@cvs.srv.it.uu.se:/repository"
   % export CVS_RSH=ccvssh

Logga in med

   % ccvssh login

Sedan använder du cvs som vanligt.

Logga ut gör du med

   % ccvssh logout

OBS !! ccvssh 0.9.1 kan behöva denna patch.

Krypterad förbindelse via stunnel

Fördelen att använda stunnel är att de flesta Linux-distributionerna och cygwin redan innehåller programmet. ccvssh måste oftast installeras manuellt.

Exemplet använder stunnel 3.x, version 4 är mer komplex att sätta upp.
Dessutom är lösningen tänkt för en-användar-maskiner eftersom porten annars kan användas av andra på maskinen.

1. Sätt upp en krypterad tunnel mot servern

   % /usr/sbin/stunnel -c -r cvs.srv.it.uu.se:2405 -d localhost:2401

2. Ange den lokala maskinen som server

   % export CVSROOT=":pserver:username@localhost:2401/repository"

3. Använd cvs som vanligt.

   % cvs login

Om du istället vill använda stunnel 4.x så kan du börja med att sätta följande i din stunnel.conf.

   client  = yes
   service = pserver
   socket  = r:TCP_NODELAY=1
   socket  = r:SO_LINGER=1:60
   pid     =
   foreground = yes

   [pserver]
   accept  = 2401
   connect = cvs.srv.it.uu.se:2405

Uppdaterad  2016-01-29 10:15:11 av Astrid Raidl.