Tipps für die Arbeit mit GitHub
Veröffentlicht am 24.08.2022 von DomainFactory
Sie arbeiten an einer neuen Software – im Team oder alleine? GitHub kann Ihre Arbeit ganz erheblich erleichtern. Lesen Sie hier, was Sie für maximale Effizienz wissen müssen.
Die Basis: Git
Die Open-Source-Software Git ist ein Werkzeug zur verteilten Versionsverwaltung für Quellcode, um die Softwareentwicklung im Team zu unterstützen. Sie stammt ursprünglich von Linux-Chef Linus Torvalds. Kern des Konzepts: Jeder Benutzer arbeitet mit einer lokalen Kopie des kompletten „Repositorys“ (das ist ein Archiv sämtlicher Daten eines Software-Projektes inkl. früherer Versionen). Dabei unterstützt Git die nicht lineare Entwicklung: Entwickler eröffnen und verfolgen für sich Entwicklungszweige („Branches“), zum Beispiel bestimmte Teilfunktionen, die dann mit dem Entwicklungsstand der anderen am Projekt Beteiligten abgeglichen werden.
Immer, wenn im Laufe der Entwicklung Dateien geändert werden, wird für diese eine neue SH1-Prüfsumme erzeugt, die für die Versionsverwaltung verwendet wird. Git kann daher verwendet werden, um Änderungen am Code und insbesondere die „Commits“ (das Einpflegen von neuem Code eines Entwicklungszweigs in ein Repository) zu verfolgen. Mehr Infos zur Arbeit mit Git finden Sie unter anderem in diesen Git-Guides von GitHub.
Git ist das populärste System zur Software-Versionsverwaltung und wird von privaten und Open-Source-Entwicklern ebenso wie für große kommerzielle Projekte eingesetzt – oft auf Online-Plattformen wie GitHub, GitLab oder auch BitBucket.
Was ist GitHub und was kann es?
GitHub ist eine webbasierte Plattform, die Git-Funktionen für die Versionsverwaltung zusammen mit weiteren Funktionen für Entwickler und die gemeinsame Arbeit an Projekten anbietet, zum Beispiel die Planung und Umsetzung von Features, die Lokalisierung oder die Bearbeitung von Fehlern. Zudem können Sie mit GitHub auch online Ihren Code bearbeiten.
Seit 2018 gibt es mit GitHub Actions die Möglichkeit, Aufgaben und Workflows zu automatisieren. Benutzer können aber auch einfach nur kompilierte oder Quellcodedateien eines veröffentlichten Projekts von GitHub herunterladen, um sie auf ihren Geräten einzusetzen.
GitHub kann als Social-Coding-Website für das Hosting von Softwareentwicklungsprojekten bezeichnet werden. Mit mehr als 56 Millionen Benutzern (2020) und fast zwei Milliarden Commits ist GitHub der weltweit größte Code-Hoster.
GitHub-Konto-Anmeldung und Login: Das sollten Sie wissen
GitHub bietet verschiedene Kontotypen an: persönliche Benutzerkonten für Einzelpersonen sowie Organisations- und Enterprise-Konten. Einzelpersonen können Mitglied von Organisationen (Teams) sein, und Organisationen können zu Enterprise-Konten gehören. Um sich anzumelden, gehen Sie auf die Pricing-Seite von GitHub und wählen Sie den gewünschten Plan (Free, Team, Enterprise). Folgen Sie den Anweisungen, um Ihr Konto zu erstellen, Ihre E-Mail-Adresse zu verifizieren und Ihr Konto zu konfigurieren. Weitere Informationen finden Sie auf den Seiten von GitHub Docs. An Ihrem neuen GitHub-Konto können Sie sich einfach mit Ihrer E-Mail-Adresse und Ihrem Passwort anmelden, es sei denn, Sie haben die Zwei-Faktor-Authentifizierung konfiguriert (empfohlen).
So arbeiten Sie mit Repositorys
Basis für die Software-Entwicklung mit Git und GitHub sind Repositorys von Softwareprojekten. So erstellen Sie direkt auf GitHub ein neues Repository:
- Wählen Sie die Schaltfläche "Neues Repository" über das Dropdown-Menü auf einer beliebigen GitHub-Seite (in der oberen rechten Ecke).
- Wählen Sie optional eine Vorlage, um die Struktur und die Dateien eines bestehenden Repositorys zu verwenden.
- Wählen Sie einen Account für den vorgesehenen Owner und geben Sie einen Namen und optional eine Beschreibung für Ihr neues Repository ein.
- Legen Sie die Sichtbarkeit des Projektarchivs fest (Public, Private, Internal).
- Geben Sie optional zusätzliche Elemente ein, z. B. eine README-Datei oder eine Lizenz.
- Wählen Sie optional die zu verwendenden GitHubs-Anwendungen aus dem Marketplace aus.
- Klicken Sie auf die Schaltfläche "Repository erstellen".
GitHub erstellt nun ein neues Repository und legt eine Kopie Ihres Projekts darin ab. Wenn Sie sich bei der Sichtbarkeit für „Private“ entscheiden, können nur Sie und Ihre Mitwirkende (Contributors) auf das Projektarchiv zugreifen. Öffentliche Repositorys („Public“) kann jedermann sehen, klonen oder Code darin ändern. („Internal“ ist nur im Zusammenhang mit Enterprise-Konten relevant.)
Sie können auch ein Repository klonen, das jemand anderes erstellt hat. Falls Sie daran unabhängig vom ursprünglichen Entwickler weiterarbeiten, entsteht ein Ableger (genannt „Fork“ – der Entwicklungsweg „gabelt“ sich).
Commits und Pull-Requests
Das Einpflegen von getestetem neuem Code in ein Repo erfolgt mit Git per commit-Befehl. Commits sind sozusagen Schnappschüsse eines bestimmten Entwicklungsstandes Ihres Repositorys und damit wichtige Bausteine der Versionskontrolle. Sie sollten daher möglichst häufig neue Commits anlegen.
Da Sie wahrscheinlich lokal an Ihrer Software arbeiten, ist es wichtig, die Daten Ihres lokalen Repositorys in Git regelmäßig mit dem Remote-Repository (in diesem Fall auf GitHub) zu synchronisieren. In Git nutzen Sie dazu den push-Befehl, um Ihre neuen lokalen Commits auf das Remote-Repo zu übertragen.
Der pull-Befehl ist dazu quasi komplementär: Pull-Requests (technisch eine Kombination von git fetch und git merge) sorgen dafür, dass der aktuelle Stand eines Remote-Repositorys und seiner Branches auf das lokale Repo übertragen wird. Das ist wichtig, um nicht unwissentlich einen Fork zu fabrizieren.
Tipp: Wenn Sie sich nicht auf der Git-Kommandozeile abmühen möchten, können Sie sich GitHub Desktop installieren. Das Werkzeug ist für Windows und Mac und auch als Open-Source-Version für Linux erhältlich.
GitHub Gist und was Sie mit Gists tun können
Eine weitere nützliche Funktion von GitHub sind „Gists“: Auf der Website GitHub Gist können Sie auf einfache Weise Codeschnipsel (oder Notizen, Fragen und sogar To-Do-Listen) posten und teilen. Technisch gesehen sind Gists Git-Repositorys. Jede Gist kann daher geklont und geforkt werden, und sie kann privat ("secret") oder öffentlich sein, also auf Discover Gists von GitHub gefunden werden.
Gists sind ideal für die Zusammenarbeit. Wenn Sie mit anderen Entwicklern an einem Projekt arbeiten, können Sie einfach gezielt Gists mit ihnen teilen, statt E-Mails mit Ihren Fragen zur Programmierung und umfangreichen Codeauszügen herumzuschicken. Das Teilen von Quellcode ist gleichzeitig eine einfache Möglichkeit, neue Coding-Tricks, Tools oder Bibliotheken kennenzulernen, von denen Sie vielleicht noch nichts wussten.
Gists sind jedoch nicht nur für Entwickler nützlich. Weil sie im HTML-Format vorliegen, können Gists in Browsern angezeigt werden. Ob Blogger, Webmaster oder Produktmanager, wenn Sie Online-Inhalte erstellen, können Sie Ihre GitHub-Gists auch direkt darin einbetten.
Kopieren Sie dazu einfach den <script>-Tag, der nach dem Anlegen oben auf Ihrer Gist angezeigt wird, und fügen Sie ihn in Ihre Webseite ein (der Name der JavaScript-Datei in der URL beinhaltet die ID der jeweiligen Gist):
<div> <h1>Meine Gist</h1> <script src="https://gist.github.com/username/gist-id.js"></script> </div> Oder wenn Sie nur eine bestimmte Datei anstelle des gesamten Gists benötigen: <script src="https://gist.github.com/username/gist-id.js?file=dateiname.js"></script>
Einige CMS ermöglichen es ebenfalls, Gists komfortabel einzubetten. Für WordPress gibt es mehrere entsprechende Plugins, zum Beispiel Gist GitHub Shortcode. Viele Plugins haben jedoch nur wenige Nutzer oder wurden seit einiger Zeit nicht mehr aktualisiert. Eines der beliebtesten Plugins, oEmbed Gist, wurde zuletzt vor 4 Jahren upgedatet. Nicht im WordPress-Plugin-Repository, sondern nur auf GitHub finden Sie GistPress. Es verwendet kein JavaScript und erlaubt es, die angezeigten Zeilen eines Gist einzuschränken.
Funktionen für Profis: GitHub vs. GitLab
GitHub ist nicht die einzige Git-basierte Codeverwaltungsplattform auf dem Markt. Eine weitere beliebte Plattform ist GitLab, die seit 2012 online ist (GitHub: 2008).
So ähnlich wie die Namen sind auf den ersten Blick auch die Angebote von GitHub und GitLab, solange es nicht um Unternehmensfunktionen geht. Beide können zum Verwalten, Freigeben oder Herunterladen von Code und Dateien verwendet werden.
Sowohl mit GitHub als auch mit GitLab können Sie direkt über den Browser, das Terminal mit Git oder mit fast jeder Git-fähigen Umgebung wie IDEs und Code-Editoren arbeiten. Mit beiden Varianten können Sie kostenlos private und öffentliche Repositorys erstellen, beide bieten Tools für die Teamarbeit, die Integration von Third-Party-Software sowie erweiterte Funktionen mit unterschiedlichen Kostenmodellen.
Es gibt natürlich auch Unterschiede: GitHub ist deutlich größer und bekannter als GitLab und hat eine fast doppelt so große Nutzergemeinde (GitLab schätzt seine auf ca. 30 Millionen Nutzer). Seit 2018 ist GitHub im Besitz von Microsoft. GitLab wird von GitLab Inc. betrieben. Die GitLab Community Edition (CE) wird als Open-Source-Software unter der MIT-Lizenz entwickelt, aber das Unternehmen bietet auch eine Enterprise Edition (EE) für Unternehmen an. Sie können GitLab auf Ihrer eigenen Hardware betreiben oder es ähnlich wie GitHub auf GitLab.com als Software as a Service (SaaS) nutzen.
Tipps für die Plattformwahl
Wenn Sie eine kostenlose, aber leistungsstarke Git-basierte Codeverwaltungsplattform für private Repos suchen, ist GitLab wahrscheinlich die bessere Wahl. Dennoch sollten Sie die Vorteile nicht vergessen, die das bekanntere Angebot bietet: Mit GitHub dürfte es einfacher sein, Nutzer und Mitwirkende für Ihre Projekte zu finden.
In Bezug auf professionelle Features wie DevOps- und CI-CD-Funktionen hat GitLab nach eigenen Aussagen die Nase vorn; es positioniert sich selbst als „DevOps-Plattform“. Die Umsätze von GitLab wachsen stetig, und im Oktober 2021 ist das Unternehmen in den USA an die Börse gegangen. GitLab bietet übrigens selbst einen detaillierten Vergleich mit GitHub an, der natürlich mit Vorsicht zu genießen, aber trotzdem nützlich ist.
Wer sich nicht entscheiden kann, möchte vielleicht die Meinung von Benutzern und Experten einbeziehen. Auf Capterra haben ca. 3.600 Benutzer GitHub durchschnittlich mit 4,8 von 5 Sternen bewertet, GitLab kommt auf 4,6 Sterne von 600 Benutzern. Vor allem beim Kundenservice schneidet GitLab ein wenig schlechter ab. An GitHub schätzen die User u. a. das Preis-Leistungs-Verhältnis und das Funktionsspektrum für kleinere Teams, aber kritisieren die komplizierte Einrichtung.
Mehr Infos zu GitHub finden Sie auch in unserem Blogartikel 9 Dinge, die Sie über GitHub wissen sollten
Sie suchen eine leistungsstarke Hosting-Plattform für Ihre Webprojekte? Dann empfehlen wir Ihnen einen Managed Server, eine JiffyBox Cloud Server oder eine vServer von DomainFactory.
Titelmotiv: Pixabay