Github
A platform for hosting and collaborating on code using Git version control.
GitHub ist eine webbasierte Plattform, die ein verteiltes Versionskontrollsystem (VCS) auf Basis von Git bereitstellt. Sie dient als zentraler Knotenpunkt für die Zusammenarbeit in der Softwareentwicklung und ermöglicht es Entwicklern, ihren Code zu speichern, zu verwalten, Änderungen zu verfolgen und zu teilen. Im Kern nutzt GitHub Git, ein Open-Source-VCS, das von Linus Torvalds entwickelt wurde und eine effiziente Verfolgung von Code-Änderungen, Branching, Merging und das Zurücksetzen auf frühere Versionen ermöglicht. GitHub erweitert die Funktionalität von Git durch eine benutzerfreundliche Oberfläche, Hosting-Möglichkeiten und eine Reihe von Kollaborationstools. Zu den Hauptfunktionen gehören Repositories (in denen Code und seine Historie gespeichert werden), Pull Requests (ein Mechanismus zum Vorschlagen von Änderungen und zur Erleichterung der Code-Überprüfung), Issue Tracking (für Fehlerberichte und Funktionsanfragen), Wikis (für Projektdokumentation) und Projektmanagement-Boards. GitHub unterstützt auch Continuous Integration/Continuous Deployment (CI/CD)-Pipelines über GitHub Actions, wodurch Test- und Bereitstellungsprozesse automatisiert werden. Sein Social Coding-Aspekt fördert die Gemeinschaft, indem er es Entwicklern ermöglicht, bestehende Projekte zu forken (zu kopieren), dazu beizutragen und neue Software zu entdecken. GitHub ist weit verbreitet für Open-Source-Projekte und private Unternehmen und fungiert als De-facto-Standard für Code-Hosting und kollaborative Entwicklung in der modernen Softwaretechnik.
graph LR
Center["Github"]:::main
Pre_cryptography["cryptography"]:::pre --> Center
click Pre_cryptography "/terms/cryptography"
Rel_cloud_computing["cloud-computing"]:::related -.-> Center
click Rel_cloud_computing "/terms/cloud-computing"
Rel_antimatter_propulsion["antimatter-propulsion"]:::related -.-> Center
click Rel_antimatter_propulsion "/terms/antimatter-propulsion"
Rel_arpanet["arpanet"]:::related -.-> Center
click Rel_arpanet "/terms/arpanet"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧠 Wissenstest
🧒 Erkläre es wie einem 5-Jährigen
GitHub ist wie eine riesige Online-Bibliothek für Computercode. Es verfolgt jede Änderung, die am Code vorgenommen wird, ermöglicht vielen Leuten, sicher gemeinsam daran zu arbeiten, und hilft ihnen, ihre Kreationen mit der Welt zu teilen.
🤓 Expert Deep Dive
GitHub fungiert als zentralisierter Dienst, der auf dem verteilten Git-Protokoll aufbaut. Während Git die lokale Versionskontrolle, das Branching, Merging und die Historienverwaltung übernimmt, stellt GitHub die Infrastruktur für das Hosting von Remote-Repositories, die Zugriffskontrolle und kollaborative Workflows bereit. Der Pull-Request-Mechanismus (PR) ist zentral für das kollaborative Modell von GitHub. Ein Entwickler erstellt einen Branch, nimmt Änderungen vor und reicht einen PR ein, der automatisierte Prüfungen (CI über GitHub Actions) auslöst und es anderen Teammitgliedern ermöglicht, den Code zu überprüfen, Änderungen vorzuschlagen und schließlich den Merge in die Hauptcodebasis zu genehmigen. Dieser strukturierte Workflow verbessert die Codequalität und Wartbarkeit. Die API von GitHub ermöglicht eine umfangreiche Integration mit Drittanbieter-Tools und -Diensten, was hochentwickelte DevOps-Pipelines ermöglicht. Sicherheitsaspekte umfassen die Verwaltung von Repository-Zugriffsberechtigungen (Lesen, Schreiben, Admin), das Management von Geheimnissen für CI/CD und die Überprüfung auf Schwachstellen. Die Skalierbarkeit und Allgegenwart der Plattform machen sie zu einem kritischen Infrastrukturstück für die globale Softwareentwicklung, wobei architektonische Überlegungen zu Skalierbarkeit, Verfügbarkeit und Datenintegrität für Microsoft, das Mutterunternehmen, von größter Bedeutung sind.