In letzter Zeit werden wir öfter mal gefragt, was besser ist, Git oder GitHub. Deswegen dieser Artikel, in dem wir kurz erklären, was eigentlich der Unterschied zwischen Git und GitHub ist.
Git vs. GitHub
Git ist ein System zur Versionsverwaltung in Entwicklungsprojekten (wie beispielsweise CVS oder SVN). Git kann man entweder auf einem eigenen Server selbst installieren oder alternativ bei einem Hoster anmieten. GitHub ist ein solcher webbasierter Hosting-Dienst zum Hosting der Git-Repositories und hat mittlerweile einen hohen Bekanntheisgrad.
Das Open-Source-Projekt GitHub ist mit den meisten Funktionen kostenfrei, wenn man seine Repositories öffentlich lesbar erstellt. Deswegen wird es gerne von Leuten und Open Source Projekten genutzt, die Teile oder komplette Projekte öffentlich verwalten möchten. Sobald man private Repositories erstellen will, muss man auf das kostenpflichtige Angebot von GitHub zurück greifen. Das macht vor allem dann Sinn, wenn man plant Kundendaten oder andere, sensible eigene Daten zu verwalten.
GitLab als Alternative zu GitHub
Wer GitHub jedoch so toll findet und nach einem Ersatz dafür für das lokale Netzwerk sucht, sollte sich mal GitLab ansehen. Hierbeit handelt es sich um eine Git-Management-Software, die man im lokalen Netzwerk einsetzt und als Alternative für GitHub angesehen werden kann. Die Software basiert auf Rails und Gitolite. Der Aufwand für die Installation und dem Hosting sollte jedoch nicht unterschätzt werden und wird in der Regel von Administratoren mit entsprechenden Kenntnissen durchgeführt. Hat man sojemanden nicht im Unternehmen, kann man eigentlich gleich auch wieder das kostenpflichtige GitHub Angebot berücksichtigen.
GitHub ist kein vollwertiges PM-Tool
GitHub bietet neben einer grafischen Oberfläche zum Verwalten der Repositories noch verschiedene Funktionalitäten zusätzlich zum Repository-Hosting an. Unter anderem ein Wiki und ein Ticketsystem und einen Support-Bereich für die Entwickler. An dieser Stelle möchten wir jedoch darauf hinweisen, dass diese Funktionalitäten recht rudimentär und nicht so flexibel bereit stehen. Sie ersetzen vor allem bei größeren Projekten in der Regel kein Projektmanagement System. Der Augenmerk von GitHub liegt mehr in der optischen Aufbereitung des Quellcodes in Git und der Darstellung des Entwicklungsfortschritts.
Wer auf der Suche nach einem vollwertigen PM-Tool mit integrierten Git-Verwaltung ist, sollte sich lieber einmal Redmine anschauen. Auch hier ist die Git-Integration komfortabel und gut gelöst.
Fazit
Git ist also das Tool und GitHub der Service für Projekte, die Git einsetzen möchten. Anwender mit entsprechenden Kenntnissen können sich Git auf einem eigenen Server leicht installieren. Anwender ohne entsprechende Kenntnisse und Budget bzw. ohne eigenen Server wird der Einstieg in Git mit GitHub erleichtert.