Mit einem Repository samt integrierter Versionsverwaltung sichern Sie Ihre Sourcen gegen Fehler und Datenverluste. Dabei dient ein Raspberry Pi als zentraler Code-Server.
Um es gleich vorwegzunehmen: Git [1] und Github [2] sind zwei unterschiedliche paar Schuhe. Git stellt ein Werkzeug zum Verwalten von Software-Repositories bereit. Es stammt vom Linux-Erfinder Linus Torvalds, der das Projekt 2005 initiierte. Bei Github handelt es sich dagegen um eine Webseite, die Entwicklern eine einfache Möglichkeit bietet, mit Git erstellte Repositories zu hosten und zu publizieren.
Der Name Git ist ein wenig untypisch für die IT-Welt. Er stellt keine Abkürzung dar, sondern bedeutet im Englischen so viel wie Blödmann. Linus antwortete auf die Frage, wie er auf diesen Namen gekommen sei, mit: “I’m an egoistical bastard, and I name all my projects after myself: First Linux, now Git.”
Git gilt heute quasi als Standard für das Verwalten von Software-Repositories. Das Programm überzeugt mit Flexibilität, einfacher Bedienbarkeit und Robustheit, um nur ein paar der Vorteile zu nennen.
Jeder Entwickler hält dabei das komplette Projekt-Repository auf seinem lokalen Rechner. Sollten also einmal die Daten auf dem gemeinsam genutzten Server verloren gehen, lässt sich die Situation recht leicht retten: Um den Server wieder neu aufzubauen, genügen die Daten von einem der beteiligten Clients.
Da Git intern mit Hashes arbeitet, ist es nur schwer möglich, die Sourcen zu verfälschen. Der Zugriff auf ein Repository kann über mehrere Wege erfolgen.
Ein Zugriff auf Dateiebene kommt zum Einsatz, wenn sich alle Repositories über das Dateisystem erreichen lassen – zum Beispiel, wenn alle Entwickler auf ein gemeinsames NFS-Share zugreifen.
Daneben bringt Git selbst ein eigenes Transferprotokoll auf Port 9418 mit. Es arbeitet sehr schnell, verzichtet aber auf eine Authentifizierung und sollte daher nur in vertrauenswürdigen Netzwerken zum Einsatz kommen.
Ein Zugriff via HTTP eignet sich gut, wenn man zum Beispiel durch einen Proxy-Server kommunizieren muss. Alle HTTP-Features lassen sich so auch auf den Git-Server übertragen, etwa die Absicherung über Basic Authentication.
Der Git-Zugriff über SSH bietet die meisten Vorteile, ohne gravierende Nachteile nach sich zu ziehen: Das Protokoll arbeitet verschlüsselt mit Authentifizierung, und man muss dazu in der Regel keinen weiteren Dienst einrichten. Diese Methode kommt denn auch bei den meisten Nutzern zum Einsatz.
Installation
Da Git einen zentralen Bestandteil für die Software-Entwicklung darstellt, lässt es sich unter Linux sehr leicht installieren. Oft ist es sogar schon von Haus aus auf dem System enthalten. Auch fast alle Images für den Raspberry Pi bringen Git schon in der Standardkonfiguration mit. Sollte es fehlen, spielen Sie es einfach mit den Kommandos aus Listing 1 auf Ihren RasPi ein.
Listing 1
$ sudo apt update $ sudo apt full-upgrade $ sudo apt install git
Nach wenigen Augenblicken steht Git auf Ihrem Raspberry Pi zur Verfügung. Wollen Sie Git auf einem anderen Betriebssystem verwenden, laden Sie es von der Projekt-Homepage herunter.
Repository erstellen
Bevor Sie ein erstes Repository erstellen, sollten wir zuerst klären, worum genau es sich bei einem Repository handelt. In diesen Zusammenhang gehört auch der Begriff Workspace: Im Workspace arbeiten Sie immer nur am aktuellen Stand Ihrer Dateien, das Repository dient dann als Speicherplatz für unterschiedliche Versionen dieser Dateien. Diese können sowohl älter als auch neuer sein oder komplett parallele Entwicklungen enthalten. Git legt im Workspace ein spezielles Verzeichnis (.git/) zum Speichern der verschiedenen Software-Versionen an.






