Technische Universität Braunschweig
  • Studium & Lehre
    • Vor dem Studium
      • Informationen für Studieninteressierte
      • Studiengänge von A-Z
      • Bewerbung
      • Fit4TU - Self-Assessment
      • Beratungsangebote für Studieninteressierte
      • Warum Braunschweig?
    • Im Studium
      • Erstsemester-Hub
      • Semestertermine
      • Lehrveranstaltungen
      • Studien-ABC
      • Studienorganisation
      • Beratungsnavi
      • Zusatzqualifikationen
      • Finanzierung und Kosten
      • Besondere Studienbedingungen
      • Gesundheit & Wohlbefinden
      • Campusleben
    • Nach dem Studium
      • Exmatrikulation und Vorlegalisation
      • Nach dem Abschluss
      • Alumni*ae
    • Strategien und Qualitätsmanagement
      • Strategiepapiere für Studium und Lehre
      • Studienqualitätsmittel
      • Studiengangsentwicklung
      • Qualitätsmanagement
      • Systemakkreditierung
      • Rechtliche Grundlagen
      • TU Lehrpreis
    • Für Lehrende
      • Informationen für Lehrende
      • Konzepte
      • Lernmanagementsystem Stud.IP
    • Kontakt
      • Studienservice-Center
      • Sag's uns - in Studium und Lehre
      • Zentrale Studienberatung
      • Immatrikulationsamt
      • Abteilung 16 - Studium und Lehre
      • Career Service
      • Projekthaus
  • Forschung
    • Forschungsprofil
      • Forschungsschwerpunkte
      • Exzellenzcluster der TU Braunschweig
      • Forschungsprojekte
      • Forschungszentren
      • Forschungsprofile der Professuren
    • Frühe Karrierephase
      • Förderung in den frühen Phasen der wissenschaftlichen Karriere
      • Promotion
      • Postdocs
      • Nachwuchsgruppenleitung
      • Junior Professur und Tenure-Track
      • Habilitation
      • Service-Angebote für Wissenschaftler*innen
    • Forschungsdaten & Transparenz
      • Transparenz in der Forschung
      • Forschungsdaten
      • Open Access Strategie
      • Digitale Forschungsanzeige
    • Forschungsförderung
      • Netzwerk Forschungsförderung
      • Datenbanken und Stiftungen
    • Kontakt
      • Forschungsservice
      • Graduiertenakademie
  • International
    • Internationale Studierende
      • Warum Braunschweig?
      • Studium mit Abschluss
      • Austauschstudium
      • TU Braunschweig Summer School
      • Geflüchtete
      • International Student Support
    • Wege ins Ausland
      • Studium im Ausland
      • Praktikum im Ausland
      • Lehren und Forschen im Ausland
      • Arbeiten im Ausland
    • Internationale Forschende
      • Welcome Support
      • Promotionsstudium
      • Service für gastgebende Einrichtungen
    • Sprachen und interkulturelle Kompetenzvermittlung
      • Deutsch lernen
      • Fremdsprachen lernen
      • Interkulturelle Kompetenzvermittlung
    • Internationales Profil
      • Internationalisierung
      • Internationale Kooperationen
      • Strategische Partnerschaften
      • Internationale Netzwerke
    • International House
      • Wir über uns
      • Kontakt & Sprechstunden
      • Aktuelles und Termine
      • International Days
      • 5. Studentische Konferenz: Internationalisierung der Hochschulen
      • Newsletter, Podcast & Videos
      • Stellenausschreibungen
  • Die TU Braunschweig
    • Unser Profil
      • Ziele & Werte
      • Ordnungen und Leitlinien
      • Allianzen & Partner
      • Hochschulentwicklung 2030
      • Stiftungsuniversität
      • Internationale Strategie
      • Fakten & Zahlen
      • Unsere Geschichte
    • Karriere
      • Arbeiten an der TU
      • Stellenmarkt
      • Berufsausbildung an der TU
    • Wirtschaft & Unternehmen
      • Unternehmensgründung
      • Freunde & Förderer
    • Öffentlichkeit
      • Veranstaltungskalender
      • Check-in für Schüler*innen
      • Hochschulinformationstag (HIT)
      • Kinder-Uni
      • Das Studierendenhaus
      • Gasthörer*innen & Senior*innenstudium
      • Nutzung der Universitätsbibliothek
    • Presse & Kommunikation
      • Stabsstelle Presse und Kommunikation
      • Medienservice
      • Ansprechpartner*innen
      • Tipps für Wissenschaftler*innen
      • Themen und Stories
    • Kontakt
      • Allgemeiner Kontakt
      • Anreise
      • Für Hinweisgeber
  • Struktur
    • Leitung & Verwaltung
      • Das Präsidium
      • Stabsstellen
      • Verwaltung
      • Organe, Statusgruppen und Kommissionen
    • Fakultäten
      • Carl-Friedrich-Gauß-Fakultät
      • Fakultät für Lebenswissenschaften
      • Fakultät Architektur, Bauingenieurwesen und Umweltwissenschaften
      • Fakultät für Maschinenbau
      • Fakultät für Elektrotechnik, Informationstechnik, Physik
      • Fakultät für Geistes- und Erziehungswissenschaften
    • Institute
      • Institute von A-Z
    • Einrichtungen
      • Universitätsbibliothek
      • Gauß-IT-Zentrum
      • Zentrale Personalentwicklung
      • International House
      • Projekthaus
      • Transferservice
      • Hochschulsportzentrum
      • Einrichtungen von A-Z
    • Studierendenschaft
      • Studierendenparlament
      • Fachschaften
      • Studentische Wahlen
    • Lehrer*innenbildung
      • Lehrer*innenfortbildung
      • Forschung
    • Chancengleichheit
      • Gleichstellung
      • Familie
      • Diversität
    • Kontakt
      • Personensuche
  • Suche
  • Schnellzugriff
    • Personensuche
    • Webmail
    • cloud.TU Braunschweig
    • Messenger
    • Mensa
    • TUconnect (Studierendenportal)
    • Lehrveranstaltungen
    • Im Notfall
    • Stud.IP
    • UB Katalog
    • Status GITZ-Dienste
    • Störungsmeldung GB3
    • IT Dienste
    • Informationsportal (Beschäftigte)
    • Beratungsnavi
    • Linksammlung
    • DE
    • EN
    • IBR YouTube
    • Facebook
    • Instagram
    • YouTube
    • LinkedIn
    • Mastodon
Menü
  • Struktur
  • Fakultäten
  • Carl-Friedrich-Gauß-Fakultät
  • Institute
  • Institut für Betriebssysteme und Rechnerverbund
  • IBR Knowledge Base
Logo IBR
IBR Login
  • Institut für Betriebssysteme und Rechnerverbund
    • News
    • Wir über uns
      • Gesamtes Team
      • Anreise
      • Raumplan
      • Projekte
      • Veröffentlichungen
      • Software
      • News Archiv
    • Connected and Mobile Systems
      • Team
      • Lehrveranstaltungen
      • Abschlussarbeiten
      • Projekte
      • Veröffentlichungen
      • Software
      • Datensätze
    • Verlässliche Systemsoftware
      • Übersicht
      • Team
      • Lehre
      • Arbeiten & Jobs
      • Forschung
      • Publikationen
    • Algorithmik
      • Team
      • Lehrveranstaltungen
      • Abschlussarbeiten
      • Projekte
      • Veröffentlichungen
    • Mikroprozessorlabor
    • Studium
      • Sommersemester 2025
      • Wintersemester 2024/2025
      • Abschlussarbeiten
    • Service
      • Bibliothek
      • Mailinglisten
      • Webmail
      • Knowledgebase
      • Wiki
      • Account Management
      • Service-Status
    • Spin-Offs
      • Docoloc
      • bliq (formerly AIPARK)
      • Confidential Technologies
    • Forschungsverbünde
      • IST.hub

IBR GIT Server (gitolite)

AutorFrank Steinberg
SchlüsselworteGIT gitolite gitosis
KategorienAdministrivia, Software

ACHTUNG: Der hier beschriebene gitolite Server wird voraussichtlich Mitte 2015 abgeschaltet. Es gibt nun einen GitLab-Server: gitlab.ibr.cs.tu-bs.de.

GIT Server Konzept

Das IBR betreibt einen Server, auf dem GIT Repositories gehostet werden können. Mitarbeiter haben die Möglichkeit Repositories anzulegen. Anschließend können sie die Zugriffsrechte auf andere authentisierte Personen ausweiten oder auch anonymen read-only Zugriff zulassen.

Der Server ist durch die Software gitolite realisiert. IBR-spezifische Erweiterungen sorgen dafür, dass die Zugriffskontrolle durch eine Datei im Repository verwaltet werden kann.

Zugriffsarten

Es gibt drei Methoden, um auf die gehosteten Repositories zuzugreifen:

  • Mittels URLs der Form git+ssh://git@git.ibr.cs.tu-bs.de/repository (oder kurz git@git.ibr.cs.tu-bs.de:repository) kann authentisiert auf ein Repository zugegriffen werden. Dazu muss der Benutzer zuvor seinen SSH Public auf dem Server hinterlegt haben. Siehe unten: "SSH Key hinterlegen".
  • Mittels URLs der Form git://git.ibr.cs.tu-bs.de/repository kann anonym auf ein Repository zugegriffen werden, das für "daemon" Zugriff freigegeben wurde.
  • Mit einem Web-Browser kann über http://git.ibr.cs.tu-bs.de/ anonym auf Repositories zugegriffen werden, die für "gitweb" Zugriff freigegeben wurde. Über https://git.ibr.cs.tu-bs.de/ können Mitarbeiter auf sämtliche Repositories zugreifen.

Zugriffskontrolle

Gitolite verwaltet die Zugriffskontrolle normalerweise in einem zentralen gitolite-admin Repository (siehe gitolite Dokumentation). Die entsprechende Datei kann für jedes Repository einen "repo"-Abschnitt enthalten, der für das entsprechende Repository die Zugriffsberechtigungen definiert. Der IBR-GIT-Server erlaubt es hingegen, den Inhalt dieses Abschnittes in jedem Repository selbst zu verwalten, und zwar in einem Branch mit dem Namen "access" und darin in der Datei ".gitaccess". Dieser Branch und diese Datei werden beim Erzeugen eines Repositories automatisch angelegt und mit Rechten, die sich auf den Erzeuger beschränken, initial konfiguriert. Anpassungen sind jederzeit möglich und werden durch ein commit&push des access Branches aktiv.

Notifications

Manchmal ist es gewünscht, dass der Server bei Änderungen Mails versendet. Dies kann durch folgende Zeile in der Datei ".gitaccess" erzielt werden:

config notify.email = example@ibr.cs.tu-bs.de,user@example.com,...

SSH Keys hinterlegen

Für den authentisierten Zugriff muss der öffentliche SSH Key des Benutzers beim Server hinterlegt worden sein. Dies geschieht implizit anhand der Dateien id_dsa.pub und id_rsa.pub im Verzeichnis $HOME/.ssh/ eines jeden IBR-Users (nicht jedoch für "externe" User, die kein Home-Directory haben). Die automatische Übernahme dieser Keys findet jede Nacht einmal statt.

Außerdem ist es möglich, explizit bis zu fünf Keys im LDAP (Attribut ibrSSHPubKey) zu hinterlegen. Diese Keys werden in der Regel unmittelbar nach einer Änderung innerhalb weniger Minuten vom GIT-Server übernommen.

Es sollte berücksichtigt werden, dass der Server vom Key auf den User schließt. Wenn also derselbe Key für zwei Accounts hinterlegt ist (egal auf welche Weise), etwa im Falle eines Studenten, der denselben Key für seinen y-Account und für seinen regulären IBR-Account nutzt, so kann der Server nicht eindeutig einen Account zuordnen und so kann unerwartet die Zugriffskontrolle scheitern.

Anlegen und Löschen von Repositories

Beim ersten lesenden oder schreibenden Zugriff auf ein nicht existierendes Repository wird dieses automatisch von gitolite angelegt:

home$ git clone git@git.ibr.cs.tu-bs.de:new-project
Cloning into 'new-project'...
Initialized empty Git repository in /git/new-project.git/
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 6 (delta 1), reused 0 (delta 0)
Receiving objects: 100% (6/6), done.
Resolving deltas: 100% (1/1), done.
home$ cd new-project
new-project$ ls -al
total 16
drwxr-xr-x 3 steinb mitarb 4096 Feb  7 14:48 .
drwxr-xr-x 7 steinb mitarb 4096 Feb  7 14:48 ..
drwxr-xr-x 8 steinb mitarb 4096 Feb  7 14:48 .git
-rw-r--r-- 1 steinb mitarb  114 Feb  7 14:48 .gitaccess
new-project$ git branch -r
  origin/HEAD -> origin/master
  origin/access
  origin/master

Ähnliches gilt beispielsweise bei einem git push git@git.ibr.cs.tu-bs.de:new-project master, wenn das Repistory auf dem Server noch nicht existiert.

Repositories müssen allerdings einem Namensschema entsprechen, das der Server erzwingt. Abweichende Namen werden abgelehnt.

Per SSH können auch einige Kommandos zur Verwaltung der Repositories (unter anderem zum Löschen) ausgeführt werden. Nähere Informationen findet man in der Dokumentation oder per ssh git@git.ibr.cs.tu-bs.de help.


aktualisiert am 28.10.2019, 08:26 von Frank Steinberg

Für alle

Stellen der TU Braunschweig
Jobbörse des Career Service
Merchandising
Sponsoring- & Spendenleistungen
Drittmittelgeförderte Forschungsprojekte
Vertrauenspersonen für Hinweisgeber

Für Studierende

Semestertermine
Lehrveranstaltungen
Studiengänge von A-Z
Informationen für Erstsemester
TUCard

Interne Tools

Status GITZ-Dienste
Handbuch für TYPO3 (Intern)
Corporate Design-Toolbox (Intern)
Glossar (DE-EN)
Meine Daten ändern
Hochschulöffentliche Bekanntmachungen

Kontakt

Technische Universität Braunschweig
Universitätsplatz 2
38106 Braunschweig
Postfach: 38092 Braunschweig
Telefon: +49 (0) 531 391-0

Anreise

© Technische Universität Braunschweig
Impressum Datenschutz Barrierefreiheit