Gitolite

Aus

Gitolite auf der DS

Gitolite erleichtert die Rechtevergabe bzw. die Zugangskontrolle zum Versionsverwaltungssystem git auf der DS.

Installation

Voraussetzungen

Git installieren

Erstmal müsst ihr das Paket git auf eurer DS installieren.

$ ipkg update
$ ipkg install git

Zusätzlich sollte mktemp installiert werden, da das gitolite setup dieses benötigt

$ ipkg install mktemp

Neuen Benutzer anlegen + Zugang zur Kommandozeile aktivieren

  1. Legt im DSM einen neuen Benutzer, der als Zugang zum git-Server dienen soll, an und aktiviert den home-Ordner.
  2. Für diesen Benutzer müsst ihr nun den Zugang zur Kommandozeile aktivieren.
    1. Loggt euch dazu als root auf eurer DS ein und führt dieses Kommando aus:
       $ vi /etc/passwd 
    2. Jetzt ändert ihr die Zeile
       EUER_BENUTZER:x:1028:100::/var/services/homes/EUER_BENUTZER:/sbin/nologin 
      auf
       EUER_BENUTZER:x:1028:100::/var/services/homes/EUER_BENUTZER:/bin/ash 
      und speichert die Datei ab.

Public Key erzeugen und übertragen

Legt euch ein Pulic Key eines Benutzers eurer Workstation an (falls ihr nicht schon einen habt) und übertragt diesen zur DS und legt ihn in das Home des Git-Users

/volume1/homes/EUER_BENUTZER/EUER_KEY.pub 

Sonstige hilfreiche Kommandos

Um Problemen bei der Gitolite Installation und der späteren Verwendung vorzubeugen, erstellen wir auf der DS einen Symbolic Link auf die git-Tools und mktemp

$ ln -s /opt/bin/git* /usr/bin/
$ ln -s /opt/bin/coreutils-mktemp /usr/bin/mktemp

Gitolite herunterladen + installieren

  1. Loggt euch auf der DS als EUER_BENUTZER ein
     $ ssh EUER_BENUTZER@IP_zur_DS 
    oder
     $ ssh root@IP_zur_DS 
     $ su - git 
  2. Erstellt in eurem Home die Datei .profile mit folgendem Inhalt
     export HOME=/volume1/homes/EUER_BENUTZER 
     export PATH=$HOME/bin:$PATH 
  3. Lesst diese neue .profile ein
     $ source .profile 
  4. Erstellt das Verzeichnis ~/bin
     $ mkdir $HOME/bin 
  5. Klont euch nun das gitolite-Repository und installiert Gitolite
     $ git clone http://github.com/sitaramc/gitolite.git 
     $ gitolite/install -ln 
  6. Führt das Gitolite Setup aus und gebt dabei den zuvor übertragenden Public Key eurer Workstation mit an
     $ gitolite setup -pk EUER_KEY.pub 

Verwendung von Gitolite

Die Verwendung von Gitolite auf der DS unterscheidet sich nicht von anderen Systemen, daher könnt ihr in der Gitolite-Dokumentation nachlesen wie ihr Gitolite benutzen könnt.