Subversion einrichten
Subversion den Urvater der Versionskontrolle unter Linux installieren.
Die benötigten Pakete installieren:
apt-get install subversion
apt-get install libapache2-svn
Ordner erstellen, in welchen Ordner die Repositorys angelegt werden soll:
mkdir /var/svn-repos/
Nun legen wir zwei Testprojekte an:
svnadmin create --fs-type fsfs /var/svn-repos/test-project1
svnadmin create --fs-type fsfs /var/svn-repos/test_project2
Als nächstes wird die Subversion-Gruppe angelegt:
groupadd subversion
…und ein bestehenden Benutzer zur Gruppe hinzufügen:
addgroup svnuser subversion
Nun werden die Rechte gesetzt:
chown -R www-data:subversion /var/svn-repos/*
chmod -R 770 /var/svn-repos/*
Als nächstes werden die Keys erzeugt:
mkdir ~/.ssh/
cd ~/.ssh/
ssh-keygen -t dsa
cat ~/.ssh/id_dsa.pub | ssh svnuser@ "cat - >> ~/.ssh/authorized_keys"
Wir loggen uns anschließend mit dem Nutzer “svnuser” ein und erstellen uns dort auch die Keys:
mkdir ~/.ssh/
cd ~/.ssh/
ssh-keygen -t dsa
cat ~/.ssh/id_dsa.pub | ssh svnuser@ "cat - >> ~/.ssh/authorized_keys"
Wir kehren zum root zurück und öffnen den ssh-agenten in einer subshell:
ssh-agent /bin/bash
Subversion sollte jetzt laufen und darum starten wir am besten einen CheckIn
mkdir ~/TEMP/
echo "testing svn" > ~/TEMP/testing.txt
svn import -m "importing test over ssh+svn" ~/TEMP/ svn+ssh:///var/svn-
repos/test-project1/trunk
svn co svn+ssh:///var/svn-repos/test-project1/trunk testcheckout
Ob der CheckIn geklappt hat, können wir überprüfen mit:
svnlook tree /var/svn-repos/test-project1/