Was sind die Unterschiede? GitHub, GitLab und BitBucket im Vergleich

Die drei Hoster GitHub, GitLab und BitBucket sind – Stand 2019 – die bekanntesten ihrer Art. Vor allem GitHub erfreut sich großer Beliebtheit vor allem als Hoster zahlreicher Open-Source-Projekte. Schauen wir uns einmal an, was jeder einzelne Anbieter zu leisten vermag.

GitHub

Das seit 2018 zu Microsoft gehörende GitHub bietet sowohl öffentliche als auch private Repositories kostenlos an. Ein Konto lässt sich schnell einrichten und für Freunde und Kollegen freigeben. Auch eine Zwei-Faktor-Authentifizierung bietet GitHub zum Schutz des Kontos an. Die Oberfläche ist übersichtlich und lässt sich gut bedienen. Eine Vorgangsverwaltung samt Kommentarfunktion gehört außerdem zum Angebot.

Ein weiterer Vorteil entsteht aus der Beliebtheit von GiHub, denn hat man ein Problem bei der Verwendung des Dienstes, ist die Wahrscheinlichkeit groß, dass auch eine andere Person dieses Problem hat oder hatte, so dass eine simple WWW-Recherche sehr wahrscheinlich Lösungsansätze aufzeigt. Gerade die oben erwähnte Vorgangsverwaltung mit Kommentarfunktion stellt eine tolle Quelle für Problembehandlung dar.

Insbesondere die große und aktive Community in und um GitHub herum, ist ein großer Pluspunkt für diesen Service. Mit den erst vor kurzem vorgestellten GitHub Actions geht GitHub auch den Schritt von einem reinen Git-Hoster mit Vorgangsverwaltung zu einem holistischeren Anbieter, denn die GitHub Actions sind die Basis für Continuous Integration à la GitLab.

GitLab

Während bei GitHub eher das Git-Hosting im Mittelpunkt steht, sieht sich GitLab mehr als Komplettanbieter des Software-Entwicklungsprozesses. So bietet GitLab neben dem Hosting auch gut integrierte Tools um die Entwicklung herum an, wie beispielsweise ein ausgeklügeltes Rollenmanagement mit entsprechender Rechtevergabe oder die bereits eingebaute und kostenlos verfügbare Continuous Integration und Deployment/Delivery. Wobei sich auch weiterhin externe Dienste wie etwa Jenkins einbinden lassen.

GitLab macht es neuen Anwenderinnen und Anwendern besonders einfach, bereits bestehende Projekte zu importieren: Sei es von anderen Diensten oder auch aus anderen Versionsverwaltungen wie CVS, Subversion oder Mercurial, es gibt eine detailreiche Dokumentation dazu. Auch beim Export bestehender Projekte tut sich GitLab hervor, denn der Export ist einfach zu vollziehen und umfassend hinsichtlich der Daten.

GitLab sticht insbesondere dann heraus, wenn es um die Abbildung des vollständigen Software-Entwicklungsprozesses geht – Stichwort: Development and Operations (DevOps).

BitBucket

BitBucket ist der Git-Hoster vom Software-Unternehmen Atlassian, dem Anbieter von beispielsweise der Dokumentations- und Kommunikationssoftware Confluence, dem Fehlerverwaltungs- und Projektmanagement-Tool Jira oder dem Organisations- und Kollaborationswerkzeug Trello. Insofern bietet BitBucket insbesondere für bestehende Anwender irgendeines anderen Atlassian-Dienstes große Vorteile, weil sich das Git-Hosting gut in das Produktangebot integriert.

Ansonsten gleicht das BitBucket-Angebot dem der Vorgänger, denn auch hier sind für uns Anwender öffentliche und private Repos kostenlos verfügbar. Allerdings stellt man fest, dass die BitBucket-Community nicht so aktiv ist, wie die Communities der beiden anderen Dienste.

Fazit

Es bleibt die Frage: Welchen Anbieter soll man nun nehmen? Die Antwort ist wie immer: Es kommt darauf an.

Bist du ganz am Anfang und startest auf der grünen Wiese, dann ist wahrscheinlich GitHub die beste Wahl. Einfach aus dem Grund, dass die dort aktive Community am größten und damit die Wahrscheinlichkeit hoch ist, dass die Probleme, auf die du stößt, bereits von anderen gelöst wurden.

Hast du bereits Produkte von Atlassian im Einsatz, dann liegt der Schritt nahe, BitBucket einzusetzen, denn die Integration zwischen den unterschiedlichen Atlassian-Diensten erleichtert den Alltag ungemein.

Hast du bereits Pläne, über das reine Git-Hosting hinauszugehen und dein Projekt Richtung Continuous Integration und Deployment/Delivery weiterzuentwickeln, dann ist GitLab ein guter Startpunkt. GitLab bietet mit dem hauseigenen Continuous-Integration-Dienst einen tollen Service, der die ersten Schritte in diese Richtung erleichtert.