GIT vs GitLab vs GitHub vs Bitbucket: was sind die Unterschiede?

Was sind Projekt-Hosting-Dienste und wozu werden diese genutzt?

Kollaboratives Arbeiten setzt die gemeinsame Nutzung von Daten voraus. Die bekanntesten Dienste in diesem Spektrum sind Dropbox, Google Drive und OneDrive. Diese Systeme sind sehr benutzerfreundlich, besitzen eine intuitive Schnittstelle und ermöglichen leichtes Arbeiten mit den Daten. Allerdings sind diese Dienste für private Nutzer angepasst und nicht an die Bedürfnisse von Entwicklern.

Entwickler benötigen ein detailliertes System zur Versionskontrolle. Systeme zur Versionskontrollen sind wichtig, um Bearbeitungen zusammenzuführen, mehrere Versionen gleichzeitig zu sehen und gegebenenfalls Leistungseinbrüche zu erkennen. Es gibt Plattformen, die sich auf diese Punkte spezialisiert haben. GitHub, GitLab und BitBucket sind hierfür die bekanntesten Plattformen.

Git als Technologie zur Versionskontrolle

Die meisten Plattformen zur Versionskontrolle basieren auf Git. Git ist das gängige System, um Teams bei der Verfolgung von Datenänderungen zu unterstützen. Somit erleichtert Git die Zusammenarbeit von Entwicklern. Konkret erfüllt Git drei wesentliche Aufgaben bei der Entwicklung.

Durch Git existiert ein Kontrollsystem. Dieses ermöglicht die Speicherung von Code und die Verfolgung von Änderungen. 

Zudem verwaltet Git eine Historie in Echtzeit. 

Zusätzlich speichert Git die Daten in der Cloud und auf den lokalen Speicher des Entwicklers. Wenn es Probleme mit einem Server oder einer Internetverbindung gibt, können die Benutzer trotzdem auf ihre Arbeit zugreifen.

Die wichtigsten Hosting-Plattformen im Überblick

Während Git eine Technologie ist, um die Probleme von Entwicklern zu lösen, sind Hosting-Plattformen Dienstleister. Die Hosting-Plattformen nutzen lediglich Git und machen die Handhabung für die Entwickler noch übersichtlicher.

Das ist GitHub

GitHub ist die bekannteste Git-basierte Hosting-Plattform. Viele Open-Source-Communitys nutzen diesen Dienst und erstellten bereits ca. 40 Millionen Projekte. Die Benutzeroberfläche von GitHub ist besonders einfach und deswegen für Einsteiger geeignet.

Außerdem wird die Plattform für Ihre Geschwindigkeit geschätzt, mit der Daten verarbeitet und Versionen zusammengefügt werden. GitHub stellt eine kostenlose Version zur Verfügung, mit der die Entwickler öffentliche und private Daten bearbeiten können. Der Preis für die Vollversion setzt sich aus der Anzahl der Nutzer zusammen.

Das ist BitBucket

BitBucket wurde im gleichen Jahr wie GitHub gegründet. Das australische Entwicklerteam verkaufte ihre Plattform im Jahr 2010 an Atlassian. Zu Beginn des Dienstes unterstütze BitBucket verschiedene Versionskontrollen. Erst im Jahr 2011 veröffentlichte BitBucket eine Versionskontrolle, die auf Git basiert.

Das Alleinstellungsmerkmal von BitBucket ist die Möglichkeit unbegrenzt viele Repositorys zu hosten, solange die Teams weniger als sechs Teilnehmer besitzen. BitBucket konnte sich zu Beginn nicht gegen GitHub durchsetzen. Dies lag vor allem an der anfangs unübersichtlichen Benutzeroberfläche und Einschränkungen in der Funktionalität.

Inzwischen wurde der Dienst überarbeitet und die Beliebtheit von Bitbucket wächst. Es lässt sich beobachten, dass sich die beiden Dienste annähern und Bitbucket in der Zukunft mit GitHub Gleichsetzen könnte.

Das ist GitLab

Als Alternative zu den beiden Platzhirschen Github und Bitbucket wurde GitLab im Jahr 2011 gegründet. Das Verkaufsargument von Gitlab ist die herausragende Benutzeroberfläche und eine umfangreiche Funktionalität.

Durch die Entwicklung neuartiger Tools wie CI-Pipeline oder Docker sind viele Teams zu GitLab gewechselt. Diese Tools werden nahtlos unterstützt und in der Plattform integriert. Allerdings ist GitLab nicht annähernd so populär wie GitHub und BitBucket. Dies könnte unter anderem an der verringerten Geschwindigkeit der Plattform liegen.

Die Funktionen von GitHub, BitBucket und GitLab im Vergleich

GitHub Funktionen

Die wichtigsten Funktionen von GitHub sind Repository Branching und Forking, Pull- und Merge-Requests sowie das Klonen der Codebasis. Diese Hauptfunktionen existieren zwar auch bei der Konkurrenz, funktionieren aber bei GitHub besonders schnell. Entwickler können ihre Dateien in entfernten Repositories hochladen und erhalten sofortiges Feedback

Weiterhin unterstützt GitHub mehrere Textformate. Zum Beispiel können Entwickler Markdown nutzen. GitHub bietet somit ein geeignetes Tool zur Wiki-Unterstützung.

Entwickler können zusätzliche Add-ons auf GitHub installieren, um die Entwicklungsproduktivität zu verbessern. Das Angebot an Add-ons ist allerdings nicht so groß wie auf BitBucket. GitLab verzichtet weitgehend auf Add-ons und bietet direkt mehr Optionen an.

Nachdem Microsoft GitHub übernommen hat, stand die Frage des Datenschutzes im Raum. Viele Nutzer sorgten sich damals um die Sicherheit ihrer Daten. Bisher hat sich diese Befürchtung nicht bestätigt und es wurden keine Sicherheitsprobleme gemeldet. GitHub verfügt nicht über das breiteste Angebot an Funktionen, punktet aber aufgrund der schnellen Leistung.

BitBucket Funktionen

Gegründet wurde BitBucket als eine Plattform, die zur Versionskontrolle Mercurial nutzt. Mercurial ist ein Versionskontrollsystem, welches weitaus weniger genutzt wird als Git. Aus wirtschaftlichen Gründen hat die Plattform die Unterstützung von Mercurial eingestellt und konzentriert sich seitdem ganz auf Git.

Solange nicht mehr als fünf Benutzer die Repositorys verwenden, können Entwickler von ihnen eine unbegrenzte Anzahl erstellen. Das Hauptmerkmal von BitBucket ist allerdings die Integration mit Jira und Asana. Seitdem die Firma Atlassian Bitbucket übernommen hat, ist die Plattform in der Szene etabliert.

Durch Jira können Entwickler die Aktivitäten in BitBucket überwachen und ihre Produktivität messen. Dieser Aspekt macht BitBucket vor allem für Projektmanager interessant, da so die technischen Aspekte des Projektes leicht zu beobachten sind.

Der große Vorteil von BitBucket ist die Einfachheit. Geschäftsinhaber oder Projektmanager mit wenig Bezug zur IT sparen eine Menge Zeit, wenn sie die Daten direkt in Jira einsehen können. Zudem können Entwickler mit BitBucket weitere Jira-Funktion nutzen.

GitLab Funktionen

Aufgrund der zunehmenden Einführung von CI/CD und DevOps, wächst die Plattform GitLab zurzeit sehr stark. Andere Plattformen bieten zwar auch CI-Funktionen an, aber bei GitLab ist das Arbeiten mit CI kostenlos.

Der Hauptunterschied zwischen GitLab und den beiden Marktführern besteht in den implementierten Tools. Neben der einsteigerfreundlichen Benutzeroberfläche besitzt GitLab kein weiteres Alleinstellungsmerkmal. Dies kann für Entwickler problematisch sein, denn wenn es um Geschwindigkeit und Leistung geht, kann GitLab nicht mit GitHub und BitBucket mithalten.

Die Schnittstellen von GitHub, GitLab und BitBucket im Vergleich

Neben unterschiedlichen Funktionen unterscheiden sich die Plattformen, wenn es um den Aufbau des Interface geht. GitHub und GitLab besitzen die besten Schnittstellen. Github wird dennoch bevorzugt, weil sich viele Entwickler bereits an die Plattform gewöhnt haben. Unternehmen, denen die Verwendung von Jira wichtig ist, profitieren von der nahtlosen Integration in BitBucket und sollten daher diese Plattform wählen.

Github besitzt viele Anleitungen und Tutorials. Entwickler lernen somit schnell den Zugriff auf grundlegende Funktionen. Außerdem ist die Benutzeroberfläche minimalistisch und dadurch leicht verständlich.

Die Oberfläche von BitBucket kann auf dem ersten Blick verwirrend sein. Da die Plattform aber immer beliebter wird, entwickeln sich mit der Zeit neue Ressourcen, um den Umgang mit BitBucket zu erleichtern.

Da der Dienst von Gitlab noch nicht so etabliert ist wie die Konkurrenten, existieren nur wenige Anleitungen und Tutorials für das Interface. Die Schnittstelle ist allerdings sehr gut organisiert. Dadurch kann das Einarbeiten auch ohne externe Tutorials gelingen. 

Interessante Links:

Zahlenvergleich der unterschiedlichen Systeme auf stackshare.io

Eine Einführung in in GitLab, GitHub und Bitbucket

Bilder: Freepik


Der Autor: Sascha Thattil arbeitet bei YUHIRO und hilft Unternehmern und Unternehmen beim einfachen Aufbau von Programmier-Teams in Indien. YUHIRO ist ein deutsch-indisches Unternehmen welches IT Firmen, Agenturen und IT Abteilungen Softwareentwickler bereitstellt.

Schreibe einen Kommentar