Wir wagen den Sprung in die Entwicklungs-Sprache
Sicherlich ist der ein oder andere bereits über GitHub oder Gists gestolpert und hat schnell weitergeklickt, um sich nicht durch zu viel Entwickler-Sprache verwirren zu lassen. Als Entwickler kennst du aber natürlich bereits die Vorteile der Gists und weißt, was GitHub ist. In diesem Blogbeitrag möchten wir euch eine Übersicht geben, die für alle gleichermaßen verständlich ist und euch in die Welt der Programmierer einführen. Wer weiß, vielleicht startest du bereits bald deine eigene Repo!
GitHub – eine Erklärung
Der Name GitHub besteht aus zwei wesentlichen Bestandteilen, die bereits Aufschluss über die Funktion geben.
Git ist eine Software zur Versionsverwaltung, die es ermöglicht, dass die Arbeitsergebnisse verschiedener Entwickler an einem Ort zusammengeführt werden können. Schließlich ist es mittlerweile üblich, dass an einem Software-Projekt mehrere Entwickler beteiligt sind und dabei jeder an einem anderen Teil des Programms arbeitet. Damit wird eine sonst mühsame Verwaltungsarbeit, den Code immer wieder zu aktualisieren, ganz einfach automatisiert.
Hub steht für die Web-Fähigkeiten von GitHub. Zum einen werden die Open-Source-Projekte von Entwicklern kostenlos gehostet. Zum anderen erweitert GitHub den Funktionsumfang von Git. Auch werden durch die grafische Browser-Darstellung Entwicklungsprozesse von Software-Projekten anschaulicher. Und selbst zahlreiche Features werden hier einfach per Mausklick ausgeführt und brauchen beispielsweise keinen Kommandozeilen-Befehl mehr, was Arbeitsprozesse vereinfacht und beschleunigt.
Viele haben bereits den Nutzen erkannt und so lassen sich auf GitHub zahlreiche Open-Source-Projekte, wie z. B. die JavaScript-Bibliothek iQuery oder der Linux-Kernel, entdecken. GitHub überzeugt darüber hinaus durch Community-Features. So erhält man die Möglichkeit, einem Entwickler oder auch nur einem Repository zu folgen und erhält auf diese Weise alle Updates einer Person bzw. des Projektes, sodass man sich stets die aktuelle Version herunterladen oder diese mitentwickeln kann. Wiki-Funktionen für jedes Projekt sowie ein Support-System runden die Funktionen von GitHub ab.
Und was ist nun ein Gist?
Wir bringen noch einen weiteren Begriff ins Spiel. Aber keine Sorge, dieser reiht sich ganz logisch in die bisherige Erklärung ein. Denn ein Gist ist die einfache Möglichkeit, einen Quellcode auf GitHub zu teilen. Dabei haben Gists, wie auch andere Repositories (kurz: Repos) eine Versions-Historie, sind aber eher für kleine Code-Schnipsel gedacht. Gist ist somit eine spezielle, in seinen Funktionen abgespeckte Variante der Repos in GitHubs. Der Vorteil im Gegensatz zu den normalen Git-Repositories? Man braucht zu deren Erstellung keine Kenntnisse in der Versionsverwaltung von Git. Darüber hinaus lassen sich Gists einfach teilen, indem man den von GitHub erzeugten Link an andere weitergibt. Entwickler verwenden Gists vor allem für kleine JavaScripte oder Konfigurations-Dateien (mit Dummy-Daten) und auch für immer wieder benötigte Funktionen aus WordPress, wie Beispielfunktionen für Shortcodes.
Im Gegensatz zu den klassischen Repos gibt es in Gists keine Möglichkeit, Verzeichnisse zu erstellen, „Tickets“ für Bugfixes oder Änderungen anzulegen oder Benutzerrollen festzulegen.
Beispiele für Gists
Um sich das Ganze etwas besser vorstellen zu können, wollen wir an dieser Stelle einen kleinen Einblick geben, wie Gists aussehen:
1 <?php 2 /** 3 * Enable shortcodes in html widget 4 */ 5 add_filter( 'widget_text', 'shortcode_unautop'); 6 add_filter( 'widget_text', 'do_shortcode');
Zu einem weiteren Beispiel für die Erstellung eines Shortcodes in WordPress-Tags geht es hier.
Die unterschiedlichen Arten von Gists
Bei einem Gist können grundsätzlich drei Arten unterschieden werden:
Öffentliche Gists
Öffentliche Gists können von anderen Benutzern in Discover entdeckt und auch verwendet werden. Entwickler verwenden öffentliche Gists, wenn sie wollen, dass ihre Arbeit gefunden bzw. vorgeschlagen wird.
Geheime Gists
Geheime Gists werden entsprechend nicht in Discover angezeigt und können auch nicht durchsucht werden. Sie sind ideal, um einen Code oder eine Prosa vorzubereiten, aber auch, um eine To-Do-Liste zu erstellen. Entwickler können unbegrenzt viele dieser geheimen Gists erstellen, die nicht öffentlich einzusehen sind.
Anonyme Gists
Anonyme Gists werden von einem Entwickler erstellt, der sich nicht bei GitHub angemeldet hat. Sie können sowohl öffentlich als auch geheim sein.
Ein Wörterbuch rund um GitHub
Bezeichnung für die unterschiedlichen Versionen einer Software innerhalb eines Repositories. Jede Version wird dabei als Branch, also als Ast, des Repositories verstanden.
Commit ist als Revision zu verstehen. Jede Änderung, die ein Entwickler an einem Projekt vornimmt, wird mit Namen und Zeitpunkt der vorgenommenen Anpassung im Commit vermerkt, wodurch jeder Schritt im Projekt nachvollziehbar wird.
Fork ist ein eigener Ableger eines öffentlichen Git-Projekts. Dieser kann privat weiterentwickelt und später wieder dem Projekt zurückgeführt werden.
Maintainer steht für die Verantwortlichen einer Repository, meist sind das die Entwickler, die die Open-Source-Projekte verwalten.
Pull bezeichnet die Übernahme der Änderungen, die ein anderer Nutzer am eigenen Repository vorgenommen hat. Pull steht somit auch für die Bestätigung des Maintainers zu einem Pull-Request eines Nutzers
Pull-Request steht für die Anfrage eines Entwicklers an den Maintainer mit der Bitte, die eigenen Anpassungen bzw. das eigene Bugfixing im Projekt zu übernehmen.
Bezeichnung für ein Projekt, welche aus der Linux-Welt stammt. Demnach werden die Dateien für ein Software-Projekt in einem Repository abgelegt.