GitHub ist eine webbasierte Entwicklerplattform rund um Git, ein System zur Versionsverwaltung von Dateien und Quellcode. Im Mittelpunkt stehen Repositories, also Projektbereiche, in denen Dateien, Änderungen und die gesamte Versionsgeschichte gespeichert werden. Entwickler können ein Repository lokal klonen, auf eigenen Branches arbeiten und Änderungen anschließend als Pull Request zur Prüfung einreichen. Dadurch verbindet GitHub Quellcodeverwaltung, Zusammenarbeit, Projektplanung, Automatisierung und Sicherheitsfunktionen in einer gemeinsamen Umgebung. Die Plattform eignet sich sowohl für einzelne Entwickler und Open-Source-Projekte als auch für Teams und große Organisationen mit vielen Repositories, Rollen und Freigaberegeln.
Ein typischer Ablauf beginnt mit einem Repository. Änderungen werden in Git als Commits gespeichert und häufig zunächst auf einem eigenen Branch vorgenommen. Über einen Pull Request lässt sich anschließend transparent zeigen, was geändert wurde. Teammitglieder können einzelne Zeilen kommentieren, allgemeines Feedback geben, Reviewer zuweisen, Prüfungen verlangen oder Änderungen freigeben. Branch-Schutz und Rulesets können festlegen, dass beispielsweise bestimmte Tests erfolgreich sein oder eine Mindestzahl an Freigaben vorliegen muss, bevor Code in einen geschützten Branch gelangt. Code Owners können zusätzlich dafür sorgen, dass Änderungen an bestimmten Dateien automatisch den zuständigen Personen zur Prüfung zugewiesen werden.
Für Planung und Zusammenarbeit bietet GitHub mehr als reine Git-Funktionen. Issues können Fehler, Aufgaben, Ideen oder Feature-Wünsche aufnehmen. Labels, Zuständigkeiten und Milestones helfen bei der Einordnung. GitHub Projects verbindet Issues und Pull Requests in Tabellen-, Board- und Roadmap-Ansichten mit eigenen Feldern und Filtern. Discussions eignen sich für offenere Fragen, Ankündigungen oder Community-Gespräche, während Wikis und README-Dateien längere Projektdokumentationen aufnehmen können. Vorlagen für Issues und Pull Requests sorgen dafür, dass wiederkehrende Angaben strukturiert abgefragt werden. Unterissues und Abhängigkeiten ermöglichen es, größere Arbeitspakete in kleinere Schritte zu zerlegen und Beziehungen sichtbar zu machen.
GitHub Actions ist die integrierte Automatisierungs- und CI/CD-Plattform. CI/CD bedeutet, dass Code automatisch geprüft, gebaut und bei Bedarf veröffentlicht wird. Workflows liegen als Dateien im Repository und können auf Ereignisse wie Pushes, Pull Requests, Zeitpläne oder manuelle Starts reagieren. Matrix-Builds testen mehrere Betriebssysteme oder Softwareversionen parallel. Wiederverwendbare Workflows vermeiden doppelte Konfigurationen. GitHub stellt eigene Runner bereit; alternativ können Unternehmen selbst gehostete Runner einsetzen. Secrets, Variablen und Environments helfen dabei, Zugangsdaten und Freigaben für Deployments zu verwalten. Artefakte und Caches können Ergebnisse oder wiederverwendbare Dateien zwischen Workflow-Schritten speichern.
Zum Entwicklungsökosystem gehören außerdem GitHub Packages, GitHub Codespaces, GitHub Pages und Releases. Packages kann verbreitete Paket- und Containerformate direkt mit Repositories verbinden. Codespaces stellt vorkonfigurierte Entwicklungsumgebungen in der Cloud bereit, die über Browser, Visual Studio Code oder SSH geöffnet werden können. GitHub Pages veröffentlicht statische Websites direkt aus Repositories; serverseitige Laufzeiten wie PHP werden dort nicht wie bei klassischem Webhosting ausgeführt. Releases verknüpfen Versionen mit Tags, Änderungsinformationen und optionalen Binärdateien. Für große Binärdateien ist Git LFS vorgesehen, weil normale Git-Repositories dafür nur eingeschränkt geeignet sind.
GitHub lässt sich umfangreich in andere Systeme einbinden. Die REST API und die GraphQL API erlauben automatisierte Datenabfragen und Aktionen. Webhooks senden Ereignisse wie neue Commits oder Pull Requests an externe Dienste. GitHub Apps bieten fein abgestufte Berechtigungen und können für einzelne Organisationen oder Repositories installiert werden; OAuth Apps decken andere Autorisierungsfälle ab. Im GitHub Marketplace stehen Apps und Actions von GitHub und Drittanbietern bereit. Zusätzlich gibt es die GitHub CLI für die Kommandozeile und eine browserbasierte Codebearbeitung über github.dev. Dadurch kann GitHub in Entwicklungsumgebungen, Ticketsysteme, Deployment-Plattformen, Sicherheitswerkzeuge und interne Automationen eingebunden werden.
Bei Sicherheit deckt GitHub mehrere Ebenen ab. Dependabot kann auf bekannte Schwachstellen oder veraltete Abhängigkeiten hinweisen und automatische Update-Pull-Requests erstellen. Code Scanning untersucht Quellcode mit CodeQL oder angebundenen Werkzeugen. Secret Scanning sucht nach versehentlich veröffentlichten Zugangsdaten und Tokens. Private Vulnerability Reporting und Security Advisories unterstützen eine vertrauliche Meldung und Koordination von Schwachstellen. Welche Sicherheitsfunktionen ohne Zusatzkosten verfügbar sind, hängt unter anderem davon ab, ob ein Repository öffentlich oder privat ist und welcher Tarif beziehungsweise welches Sicherheitsprodukt eingesetzt wird. Deshalb sollte bei privaten Unternehmensprojekten nicht automatisch davon ausgegangen werden, dass jede erweiterte Sicherheitsfunktion im Basistarif enthalten ist.
Für Organisationen bietet GitHub Teams, Rollen und Berechtigungen auf mehreren Ebenen. Repository-Rechte lassen sich differenzieren, Teams können Zugriffe bündeln und Regeln können organisationsweit vereinheitlicht werden. Enterprise-Funktionen erweitern diese Verwaltung unter anderem um SAML Single Sign-on, SCIM-Benutzerbereitstellung, Audit Logs und Enterprise Managed Users. Damit können Unternehmen Konten und Zugriffe stärker über einen eigenen Identitätsanbieter steuern. GitHub Enterprise Server ist die Variante für den Betrieb in eigener Infrastruktur beziehungsweise in selbst kontrollierten Cloud-Umgebungen. Self-Hosting ist damit möglich, gehört aber nicht zum kostenlosen Standardangebot von GitHub.com und erfordert ein passendes Enterprise-Modell.
GitHub ist über mehrere Oberflächen nutzbar. Die Web-App ist der zentrale Zugang. GitHub Desktop bietet eine grafische Git-Oberfläche für Windows 10 in 64 Bit oder neuer sowie macOS 12 oder neuer; eine offiziell unterstützte Linux-Version von GitHub Desktop gibt es weiterhin nicht. Auf Linux kann GitHub dennoch problemlos über Git, Browser und die GitHub CLI verwendet werden. GitHub Mobile steht für iOS und Android bereit und eignet sich unter anderem für Benachrichtigungen, Issues, Pull Requests und kleinere Review-Aufgaben unterwegs. Die Mobile-App unterstützt mehrere Sprachen einschließlich Deutsch.
Der dauerhaft kostenlose GitHub-Free-Tarif kostet 0 und umfasst unbegrenzt viele öffentliche und private Repositories. Für bestimmte Cloud-Ressourcen gelten Kontingente. Für private Repositories enthält GitHub Free 2.000 GitHub-Actions-Minuten pro Monat; Standard-Runner in öffentlichen Repositories sowie selbst gehostete Runner werden nicht auf dieses Minutenkontingent angerechnet. Codespaces und Speicher besitzen ebenfalls eigene Freikontingente und anschließend nutzungsabhängige Preise. GitHub Team wird auf der aktuell geprüften öffentlichen Preisseite mit 4 US-Dollar pro Nutzer und Monat für die ersten zwölf Monate beworben, GitHub Enterprise beginnt dort bei 21 US-Dollar pro Nutzer und Monat für die ersten zwölf Monate. Für Deutschland wurde auf der öffentlichen Preisstrecke kein eigener verbindlicher EUR-Preis bestätigt, deshalb werden diese bezahlten Originalpreise nicht in Euro umgerechnet.
Eine echte zeitlich begrenzte Testmöglichkeit gibt es für GitHub Enterprise Cloud: GitHub bietet eine 30-tägige kostenlose Testphase an. Das ist von GitHub Free zu unterscheiden, denn der Free-Tarif ist kein Test, sondern ein dauerhaft nutzbarer kostenloser Tarif. Enterprise ergänzt Funktionen für zentrale Verwaltung, Unternehmensrichtlinien, Identitäten, Support und je nach Konfiguration Datenresidenz. Zusatzprodukte und nutzungsabhängige Dienste können weitere Kosten verursachen. Für eine realistische Kostenplanung sollten Unternehmen daher nicht nur den Nutzerpreis betrachten, sondern auch erwartete Actions-Laufzeiten, Codespaces-Nutzung, Speicher und separat lizenzierte Zusatzfunktionen berücksichtigen.
Beim Datenschutz ist eine differenzierte Betrachtung wichtig. GitHub erklärt, dass Daten für GitHub.com standardmäßig in den USA gespeichert werden. Für GitHub Enterprise Cloud mit Datenresidenz können geeignete Unternehmen eine Region wählen; aktuell gehören dazu unter anderem die EU, Australien, die USA und Japan. Die Enterprise-Instanz läuft dann auf einer eigenen GHE.com-Subdomain. GitHub weist zugleich darauf hin, dass bestimmte Daten auch außerhalb der gewählten Region gespeichert oder übertragen werden können. Die allgemeine Datenschutzerklärung beschreibt außerdem internationale Datenübertragungen und nennt unter anderem Standardvertragsklauseln als Grundlage für bestimmte Übermittlungen. Ein Datenverarbeitungsvertrag und eine veröffentlichte Unterauftragnehmerliste stehen für die davon erfassten Geschäftsdienste zur Verfügung. Daraus folgt aber keine pauschale Aussage, dass jede konkrete Nutzung automatisch DSGVO-konform ist; Unternehmen müssen ihren Einsatzzweck, Tarif, aktivierte Dienste und eigene Compliance-Anforderungen prüfen.
Die Portabilität des eigentlichen Quellcodes ist eine Stärke: Git basiert auf einem verteilten Modell, Repositories lassen sich klonen, spiegeln, übertragen und lokal sichern. GitHub bietet außerdem Exporte für Kontodaten und Migrationswerkzeuge zwischen Plattformvarianten. Vollständige Portabilität aller Plattformdaten ist jedoch nicht garantiert. Je nach Migrationsweg können bestimmte Metadaten, Teamzuordnungen, Fork-Beziehungen oder plattformspezifische Funktionen nicht vollständig mitgenommen werden. Wer einen späteren Anbieterwechsel einplant, sollte deshalb unterscheiden zwischen dem Git-Repository selbst und GitHub-spezifischen Daten wie Issues, Projects, Actions-Konfigurationen, Berechtigungen oder Marketplace-Integrationen.
Für Open Source ist GitHub besonders relevant, weil öffentliche Repositories, Forks, Pull Requests, Issues, Discussions, Releases und soziale Projektfunktionen Beiträge von externen Entwicklern erleichtern. Gleichzeitig eignet sich die Plattform für private kommerzielle Projekte. Unternehmen können Repositories in Organizations bündeln und Regeln, Teams, Rollen sowie Sicherheitsrichtlinien zentral verwalten. Hochschulen, Lehrkräfte und Lernende nutzen GitHub häufig für Programmierprojekte und nachvollziehbare Versionsstände. Nichttechnische Teams können Issues und Projects zwar ebenfalls verwenden, doch GitHub bleibt im Kern eine Entwicklerplattform; für reine allgemeine Aufgabenverwaltung, Dokumentenarbeit oder Chat gibt es meist einfachere Speziallösungen.
Im Bewertungsquellen-Audit ist die offizielle GitHub-App bei Google Play die Quelle mit der höchsten bestätigten sichtbaren Anzahl und erreicht in der direkt geprüften Deutschland-Ansicht 4,6 von 5 Punkten bei rund 174.000 Bewertungen. Weitere große Bestände stammen unter anderem aus dem Apple App Store sowie aus Softwareportalen wie Crozdesk, Capterra, Software Advice, GetApp, SaaSworthy und G2. Diese Werte dürfen nicht zu einer Gesamtzahl addiert werden, weil sich Nutzergruppen und teilweise auch zugrunde liegende Bewertungsnetzwerke überschneiden können. Gerade Capterra, GetApp und Software Advice gehören zum gleichen Gartner-Digital-Markets-Umfeld. Einzelne Plattformen zeigen außerdem regional unterschiedliche App-Store-Bestände. Für die ToolWissen-Hauptbewertung zählt deshalb ausschließlich die größte direkte importfähige Quelle.
Als direkte Alternativen kommen je nach Schwerpunkt unter anderem GitLab, Bitbucket, Azure DevOps, Gitea und Forgejo infrage. GitLab bündelt ebenfalls Repository-Hosting und DevOps-Funktionen, Bitbucket ist eng mit dem Atlassian-Ökosystem verbunden, Azure DevOps richtet sich stark an Microsoft- und Enterprise-Workflows, während Gitea und Forgejo für selbst gehostete und stärker kontrollierbare Setups interessant sind. GitHub ist besonders passend, wenn ein großes Entwicklerökosystem, öffentliche Projektpräsenz, Pull-Request-Workflows, GitHub Actions und eine breite Integrationslandschaft wichtig sind. Weniger passend ist die Plattform, wenn ein komplett kostenloses Self-Hosting, ausschließlich lokale Datenverarbeitung oder eine einfache nichttechnische Aufgabenverwaltung im Vordergrund steht.