Gitosis auf Debian Etch installieren
Wer für geschlossene Projekte nicht auf GitHub zurückgreifen will, kommt gegebenenfalls nicht darum herum auf einem eigenen Server ein Gitosis aufzusetzen. Ich hatte mich in der letzten Zeit damit beschäftigt dies auf einem vServer mit Debian Etch zu tun und bin natürlich über ein paar hilfreiche Tutorials gestolpert und habe das ein oder andere Problem bemerkt.
Git installieren
Bevor das eigentliche Gitosis installiert werden kann, muss erstmal Git auf dem Server bereitstehen. Hier entsteht auch schon die erste Hürde, die in den gefundenen Tutorials nicht erwähnt wird. Für die spätere Installation von Gitosis wird eine aktuellere Git-Version als die direkt verfügbare benötigt. Grund hierfür ist ein Befehl der von der älteren Version nicht unterstützt wird.
Ich habe für die Installation dann auch ein passendes Tutorial gefunden. Weshalb ich im folgenden auch dessen Inhalt wähle und nicht den Standard-Weg über apt-get.
Backports als Source hinzufügen
Die Datei /etc/apt/sources.list wird um folgendes ergänzt:
#git
deb http://www.backports.org/debian etch-backports main contrib non-free
Einstellungen setzen
Nun werden in der Datei /etc/apt/preferences die Einstellungen für das Package git-core ergänzt:
Package: git-core
Pin: release a=etch-backports
Pin-Priority: 999
GPG-Key, Quellen, Installation
Zuerst muss der GPG-Key von Backports hinzugefügt werden:wget -O - http://backports.org/debian/archive.key | apt-key add -
Dann das Update der Sourcen durchführen:aptitude update
und zuletzt die eigentliche Installation starten:aptitude install git-core
Bei erfolgreicher Installation dürfte eine Versionsabfrage mit git --Version zu folgendem Output führen: git version 1.5.6.5
Gitosis installieren
Wenn Git selbst läuft, kann sich an die Installation des eigentlichen Gitosis-Servers gemacht werden. Hier lassen sich dann wieder so ziemlich alle Tutorials problemlos nutzen. Ich habe mich auf die bei Vince Wadhwani und Garry Dolley verlassen können.
Gitosis vorbereitung
Erstmal wird direkt mit Git das Gitosis-Repository von einem öffentlichen Server gezogen:
cd ~/src
git clone git://eagain.net/gitosis.git
Nun muss die Installation von Gitosis angestoßen werden, die geschieht mit Hilfe der Python Setuptools, sind diese nicht auf dem System vorhanden, können sie mittels sudo apt-get install python-setuptools nachinstalliert werden.
Sind die Tools vorhanden bzw. installiert, wird wie folgendes ausgeführt:
cd gitosis
sudo python setup.py install
System-User anlegen
Nun wird ein User benötigt über den sämtliche Aufgaben laufen werden. Dieser wird mit
sudo adduser \
--system \
--shell /bin/sh \
--gecos 'git version control' \
--group \
--disabled-password \
--home /home/git \
git
auf dem System angelegt. In diesem Fall heißt der User git. Wer ihn lieber gitosis nennen möchte, muss in den letzten beiden Zeilen das git durch gitosis ersetzen.
Ersten User im Gitosis anlegen
Um den eigenen User anzulegen wird zuerst mal ein öffentlicher SSH-Key vom eigenen System benötigt. Dieser wird mittels des Keygenerators im System erzeugt:
ssh-keygen -t rsa
Nach der Kopie auf den Server wird der Key dann dem gitosis hinzugefügt:
sudo -H -u git gitosis-init /tmp/id_rsa.pub
Nun kann mittels folgender Zeilen gitosis-admin als lokales Repository gezogen werden:
git clone git@SERVERNAME:gitosis-admin.git
Ab diesem Moment lässt sich das gitosis über das lokale Repository steuern. Dazu müssen nur die gewünschten Änderungen commited und auf den Server gepusht werden.










Feed
Newsletter













Keine Kommentare
Schreibe den ersten Kommentar!