Definition „Github“

Was ist GitHub?

| Autor / Redakteur: Ilan_r_r / Stephan Augsten

Für Entwickler hat sich GitHub zu einem Glücksfall entwickelt, denn das System bietet enorme Flexibilität.
Für Entwickler hat sich GitHub zu einem Glücksfall entwickelt, denn das System bietet enorme Flexibilität. (Bild: GitHub)

GitHub ist ein Webserver für Software-Projekte. Entwickler stellen hier ihren Code über öffentlich einsehbare Repositories bereit, so dass die Community ihn prüfen und weiterentwickeln kann. Im Falle eines kommerziellen Projekts ist es aber auch möglich, entgeltlich ein abgeschottetes Repository aufzusetzen

Die Versionsverwaltung Git und der Serverdienst GitHub

Das Wort GitHub ist eine Zusammensetzung aus den Begriffen Git und Hub. Der Begriff Hub lässt sich dabei mit „zentrale Stelle“ oder „zentraler Sammelpunkt“ übersetzen und meint den Server. Der Begriff Git stammt hingegen von der gleichnamigen Versionsverwaltungs-Software.

Git ist mittlerweile in extrem vielen Programmierprojekten involviert, da sich mit dieser Software auch komplexe Projekte problemlos und vor allem sicher managen lassen. Entwickelt wurde Git ursprünglich, um den Linux-Kernel mit einer großen Anzahl an Mitarbeitern zu verwalten und zu verbessern. Schnell wurde die Software aufgrund ihres einfachen Zugangs jedoch immer beliebter und verbreitete sich entsprechend rasant auf dem Markt.

Oftmals arbeiten viele – sogar hunderte – Programmierer an einem Programm oder Software-Projekt. Jeder ist für einen anderen Teil des Programms zuständig. Anstatt nun alle Änderungen einer zentralen Person zukommen zu lassen, welche diese einzelnen Stückchen Programmcode in das fertige Endprogramm implementiert, übernimmt Git diese Arbeit automatisiert.

Die große Besonderheit daran ist, dass jede Änderung abgespeichert und als neue Version hinterlegt wird. Somit ist es möglich, bei Fehlern oder auftretenden Problemen immer auf eine der vorhandenen älteren Versionen zurückzugreifen.

GitHub als zentrale Lösung für Verbraucher

Mit GitHub steht eine zentrale Lösung im Internet zur Verfügung, welche diese Vorteile auch den normalen Endnutzern zukommen lassen möchte. So können sich Programmierer – beispielsweise bei etlichen Open-Source-Projekten – dazu entscheiden, die Programmierarbeit über GitHub zu erledigen und somit die Software offen zugänglich zu machen.

Dabei können sowohl die Nutzer auf die verschiedenen vergangenen Versionen der Software zurückgreifen, als auch sich selber an der Software-Entwicklung beteiligen und selber Änderungen am Code vornehmen. Da alle Änderungen beim erneuten Hochladen geprüft und in ihrer Kompatibilität bewertet werden, kommt es hierbei zu keinen Schwierigkeiten.

Benutzerfreundlichkeit steht im Vordergrund

Für Programmierer hat sich GitHub zu einem Glücksfall entwickelt, denn das System bietet enorme Flexibilität. Das dahinter stehende System bietet einige Vorteile, welche vor allem der Bequemlichkeit geschuldet sind. Denn Git lässt sich durchaus auch ohne grafische Oberfläche und nur per Konsolenbefehl nutzen.

Mit dem grafisch aufgebauten GitHub sind viele dieser Funktionen deutlich schöner gestaltet und auch für Einsteiger leicht nachvollziehbar. So lassen sich die verschiedenen Aktionen mit wenigen Mausklicks durchführen, was den Komfort bei der Arbeit mit Git nochmals deutlich erhöht.

Wer sich intensiv in Git und GitHub einarbeiten möchte, sollte sich allerdings mit den typischen Vokabeln der GitHub-Nutzer vertraut machen. Diese werden immer wieder verwendet, um bestimmte Projekte oder Arbeiten zu beschreiben. Die wichtigsten Vokabeln in diesem Bereich sind:

  • Repository
  • Branch
  • Commit
  • Pull Request
  • Fork
  • Merge

Das eigentliche Projekt wird im Bereich GitHub als Repository bezeichnet. Der ursprüngliche Begriff stammt von den Software-Repositories aus der Linux-Welt, über die sich Programme herunterladen lassen. Ein GitHub Repository entspricht aber eher einem Code-Archiv bzw. Code-Berzeichnis.

Als Branch wird in diesem Segment die Version eines Software-Projektes bezeichnet. Es kann innerhalb eines Repository verschiedene Branches geben, die unterschiedlich weit entwickelt werden.

Der Begiff Commit bezeichnet den Vorgang, bei welchem eine neue Version eines Branches eingereicht wird. Mit dem Commit bestätigt der Programmierer seine Änderungen.

Der Fork ist ein eigener Ableger eines Projekts, welches losgelöst vom weiteren Bearbeitungsstand genutzt werden kann. Hierfür wird das betroffene Repository vom Drittentwickler dupliziert.

Der Pull Request wird von Fork-Entwicklern genutzt, um eigene Änderungen in das Ursprungsprojekt einfließen zu lassen. Der Besitzer wird mit dem Pull Request über die Änderung informiert. Ganz im Sinne der Versionskontrolle lässt sich die neueste Software-Version im Repository nun abgleichen, ehe die Änderungen gepullt, also ins Repository gezogen werden. Das Verschmelzen bezeichnet man dann als „Merge“.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

JavaScript-Framework Tabris für Tests freigegeben

Release Candiate zu Tabris.js 3.0 ist verfügbar

JavaScript-Framework Tabris für Tests freigegeben

Das JavaScript-Framework Tabris.js 3.0 soll vor der finalen Veröffentlichung ausführlichen getestet werden. Die Innoopract Informationssysteme GmbH hat deshalb einen entsprechenden Release Candidate veröffentlicht. lesen

Unit-Tests für Bash-Skripte mit BATS

Bash Automated Testing System unter Unix

Unit-Tests für Bash-Skripte mit BATS

Beim Thema Software Testing stehen normalerweise die großen, „echten“ Programmiersprachen im Vordergrund – Skripte bleiben meist außen vor. Mit dem Skript-Spezialisten BATS lassen sich ganz einfach Unit-Tests für jegliche Art von Unix-Programm erstellen. lesen

Lizenzkonformität mit FOSSA erkennen

Compliance in Open-Source-Projekten

Lizenzkonformität mit FOSSA erkennen

Projekte im Open-Source-Bereich können sehr fordernd werden, wenn es um Lizenzen geht. Vor allem, wenn es viele Abhängigkeiten in Form von Drittsoftware gibt. Welche Lizenzen werden überhaupt über die gesamte Code-Basis genutzt? Und werden alle Obligationen erfüllt? Die FOSSA-Tools können Ihnen dabei helfen – bei kleineren Projekten auch kostenlos. lesen

Binary-Analyse und -Rewriting unter MIT-Lizenz

GrammaTech macht IR-Datenstruktur quelloffen

Binary-Analyse und -Rewriting unter MIT-Lizenz

GrammaTech will die Zusammenarbeit von Entwicklern in den Bereichen Binäranalyse, Reverse Engineering und Binary Rewritings fördern. GTIRB-Datenstruktur, Disassembler und Code-Rewriter des Herstellers werden deshalb künftig in einer Open-Source-Suite bereitgestellt. lesen

Visual Studio 2019 Version 16.1 im Team nutzen

Microsoft veröffentlicht Vorabversion von Visual Studio

Visual Studio 2019 Version 16.1 im Team nutzen

Microsoft macht Visual Studio 2019 mit der Vorabversion Version 16.1 „teamfähiger“: Die IDE unterstützt nun die Referenzierung von Shared Projects aus VSIX-Projekten. Dadurch können Entwickler Code mit anderen Entwicklern teilen. lesen

Mehr GitHub in Microsoft Azure

Neuheiten in Azure DevOps Sprint 149

Mehr GitHub in Microsoft Azure

Mit Azure DevOps Sprint 149 bietet Microsoft Neuheiten insbesondere beim Source Code Management. So ist es möglich, direkt aus GitHub auf Azure Board Work Items zuzugreifen, außerdem lassen sich Boards-Projekte mit „GitHub Enterprise Server“-Instanzen verbinden. lesen

Pivotal Cloud Foundry 2.5 veröffentlicht

Neue Features und Beta-Tools für die Cloud-Plattform

Pivotal Cloud Foundry 2.5 veröffentlicht

Pivotal hat just seine Version 2.5 der Open-Source-Multi-Cloud-Plattform Cloud Foundry vorgestellt und verspricht eine ganze Reihe größerer wie kleinerer Neuerungen, beispielsweise die flexiblere Einbindung von Kubernetes. lesen

Google fordert Play Developer API Version 3

Schnittstellen-Update bis Dezember erforderlich

Google fordert Play Developer API Version 3

Android-App-Entwickler, die ihre Anwendungen über Google Play veräußern wollen, müssen noch in diesem Jahr ihre Google Play Developer API auf Version 3 aktualisieren. Benutzer der ersten API-Version müssen dabei ein wenig mehr Hand anlegen. lesen

Open-Source-Lizenzen im Überblick

Wege durchs Lizenzdickicht

Open-Source-Lizenzen im Überblick

Wer Open-Source-Software verwendet, muss Regeln beachten. Oft ist die legale Nutzung kniffliger als erwartet. Kommerzielle Tools und Services, aber auch Tools, die ebenfalls quelloffen sind, können helfen, Lizenzrechte einzuhalten. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 44902110 / Definitionen)