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).
- Tala om namnet på repositoryt
- Om du själv vill hantera användare
- Om du vill ha användare med bara läsrättigheter
- 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
Länkar:
- CVS hemsida
- Eclipse cvs-ssl plugin
- WinCVS en Windows-klient.
- TortoiseCVS en Windows-klient.
- CVSNT en Windows-klient och -server.
- LinCVS en klient för Linux/Unix/MacOS X.
- jCVS en klient skriven i Java.
- Smart CVS en klient skriven i Java.