Book description
GitHub ist derzeit die größte Internetplattform für Open-Source-Entwicklungsprojekte und bietet ein grafisches Webinterface mit vielen Funktionen für die gemeinsame Arbeit sowie interessante Community-Features. Technisch setzt es auf der bekannten Versionsverwaltung Git auf.
Aber was ist ein Repository, Branch, Commit, Pull-Request oder Fork? Wie lege ich ein eigenes Projekt an? Was muss ich beim Mergen beachten und wann sind »etwas Git« oder Actions und Apps ein guter nächster Schritt?Einsteiger*innen lernen alle wichtigen Werkzeuge und Begriffe kennen, spielen typische Arbeitsschritte durch und erhalten über die Funktionalität der Plattform hinaus viele Infos und Praxistipps. Mit diesem verständlichen und humorvollen Leitfaden gelingt der unfallfreie Einstieg in die Open-Source-Welt – garantiert.
Table of contents
- Cover
- Titel
- Impressum
- Inhalt
- Vorwort
- Ist dieses Buch das richtige für mich?
- Für wen ist dieses Buch nicht geeignet?
- Der Leser oder die Leserin?
- Wie ist dieses Buch zu lesen?
- Konventionen in diesem Buch
- Danksagung
- 1 Was ist GitHub, und wofür brauche ich es?
- 2 GitHub – Wir verschaffen uns einen Überblick
-
3 Die Basis: Das erste eigene GitHub-Projekt
- Account anlegen
- Account schützen
- Unsichtbar werden – die eigene Mailadresse schützen
- Das erste eigene Repository anlegen
- Eine inhaltliche Änderung am Projekt vornehmen
- Den ersten Ablauf üben – Issue anlegen und bearbeiten
- Einen Issue anlegen
- Den Issue bearbeiten und schließen
- Ein bestehendes Repository löschen
- Ein bestehendes Projekt hochladen
-
4 Die wichtigsten Grundlagen für eigene GitHub-Projekte
- Den zweiten Ablauf üben – Branches, Pull-Requests und Merges
- Branch – unterschiedliche Handlungsstränge aufmachen
- Änderungen auf einem Branch vornehmen
- Pull-Request – Änderungen in Branches aufzeigen
- Merge – Änderungen aus Pull-Requests übernehmen
- Reviews durchführen
- Reviewer manuell anfordern
- Reviews automatisch zuweisen – CODEOWNERS
- Gutes schützen – Protected Branches
- Genehmigung vorschreiben – Required Reviews
- Genehmigung automatisch zurückziehen
- Genehmigung durch Eigentümer*innen vorschreiben
- Den Laden sauber halten – Vorlagen, Diskussionen eingrenzen
- Vorlagen für Issues
- Vorlagen für Pull-Requests
- Für Ruhe sorgen (Teil 1) – Locking Conversations
- Für Ruhe sorgen (Teil 2) – Interaction Limits
-
5 Rechtliches – Open-Source-Lizenzen
- Warum Lizenzierung wichtig ist
- Lizenz Marke Eigenbau
- Welche Lizenzen gibt es?
- Softwarecode
- Musik, Bilder und Texte
- Was wählen andere als Lizenz?
- Welche Lizenz ist die richtige für mich?
- Wo finde ich mehr Infos und Unterstützung zu Lizenzen?
- Unterstützung bei der Wahl der richtigen Lizenz
- Tools und Informationen zu/über Lizenzen
- Eine Lizenz zu einem Repository hinzufügen
-
6 Unterstützung für GitHub-Projekte finden
- Wie bringt man Leute dazu, beim eigenen Projekt mitzumachen?
- Dein Projekt auffindbar machen
- Dein Projekt anschaulich beschreiben
- Dein Projekt bekannt machen
- Dein Projekt (gegebenenfalls) zugänglich machen (Rechtevergabe)
- Ein Projekt finden, das du unterstützen möchtest
- Wer bin ich und, wenn ja, wie viele?
- Fremdes Projekt suchen
- Fremdes Projekt begutachten
- Fremdes Projekt unterstützen – Fork
-
7 Ein Projekt lokal mit Git verwalten
- Warum GitHub allein manchmal nicht ausreicht
- Git, was ist das? – Eine kurze Einführung
- Versionsverwaltung
- Dezentral
- Exkurs: Umgang mit der Konsole
- Git installieren und einrichten
- Exkurs: Die Konsole für Git einrichten am Beispiel Bash (für Fortgeschrittene)
- Drei Schritte, um einen Branch farbig anzuzeigen
- Anpassen der .bashrc
- Tiefer einsteigen
- Wie Git tickt – Staging
- Das eigene Projekt mit Git verwalten
- Das Arbeitsverzeichnis initialisieren
- Eine neue Datei ins lokale Repository einfügen
- Eine Datei im lokalen Repository ändern
- Dateien von der lokalen Versionsverwaltung ausschließen
- Branching in Git
- Branches erzeugen
- Zwischen Branches wechseln
- Binärdateien mit Git verwalten
- Installation von Git LFS
- Git LFS einrichten
- Sich weiter schlaumachen über Git
- Oldschool: Bücher
- Neumodischer Kram: Internet
-
8 Git und GitHub im Zusammenspiel
- Szenario 1: Lokales Git-Projekt auf GitHub hochladen
- Lokal ein Git-Repository mit einer Datei anlegen
- Leeres Repository auf GitHub anlegen
- Das Git- mit dem GitHub-Repository verknüpfen
- Git-Repository auf GitHub hochladen (pushen)
- Lokal Änderungen vornehmen und diese auf GitHub hochladen
- Szenario 2: Projekt auf GitHub lokal zu Git holen
- Ein neues GitHub-Repository mit einer Datei erstellen
- Das GitHub-Repo mittels Git lokal klonen
- Das GitHub-Repo anpassen und die Änderung in die lokale Git-Arbeitsumgebung holen
- Szenario 3: Geforktes Projekt auf GitHub lokal zu Git holen
- Wir forken auf GitHub ein Projekt
- Wir klonen den Fork lokal mittels Git
- Wir legen in Git ein zweites Remote-Repository fest
- Wir aktualisieren den lokalen Klon aus dem Originalprojekt
- Szenario 4: Lokale Änderung an Originalprojekt übergeben
- Wir richten alles so ein, wie in Szenario 3 beschrieben
- Wir editieren lokal eine Datei und pushen sie zum Fork auf GitHub
- Wir erstellen einen Pull-Request aus dem Fork an das Originalprojekt
- Wir üben uns in Geduld und warten auf das Mergen des Pull-Requests
- Merge-Konflikte lösen
- Wie entstehen Merge-Konflikte?
- Konflikte auflösen mit GitHub (Webeditor)
- Konflikte auflösen mit Git (Konsole)
- Log-in-Erleichterungen bei HTTPS
- Zugangsdaten auf Zeit zwischenspeichern (meine Empfehlung)
- Zugangsdaten dauerhaft speichern
-
9 Der GitHub Marketplace – Actions und Apps
- Was können Actions und Apps?
- Eine App aus dem Marketplace installieren
- App installieren
- App anpassen
- Eine Action aus dem Marketplace installieren
- Action installieren
- Action ausprobieren und feinjustieren
- Hinter den Kulissen einer Action
- Eine eigene Action erstellen (für Fortgeschrittene)
- Einige grundlegende Begriffe
- Anatomie einer Action
- Unseren Anwendungsfall einrichten
- Unseren Anwendungsfall verstehen
- Passwörter geheim halten – GitHub Secrets
-
10 Pimp my Repo – Weitere GitHub-Features
- Websites aus GitHub generieren (GitHub Pages)
- GitHub Pages einrichten
- GitHub Pages verschönern mit dem Theme Chooser
- GitHub Pages ausbauen – die Navigation einrichten
- GitHub Pages – weitere Themes
- Angriff der Klone – Repo-Templates anlegen
- Eigene Projektboards – mit Projects den Überblick behalten
- Grundlegendes zu Projektboards
- Ein eigenes Projektboard erstellen
- Projektboard automatisieren
-
11 Nützliches und Kurioses rund um GitHub
- GitHub auf der Kommandozeile
- GitHub CLI
- Hub
- GitHub-API (für Fortgeschrittene)
- Sich mit GitHub weiter auseinandersetzen
- GitHub Learning Lab
- Weitere Ressourcen zum Recherchieren
- Editoren und Handy-Apps
- Klein und schlank – Atom
- Visual Studio Code
- Für Website-Gestalter – Brackets
- GitHub Desktop
- GitHub auf dem Handy – GitHub Mobile
- GitHub auf dem Handy – Octodroid
- Nützliches und kleine Spielereien
- Übersetzungsmanagementtools – crowdin und Weblate
- Zeigen, wo man steht – Badges
- Sag es mit einem Bild – Gitmoji
- Ideen für eigene Repositories – ohne programmieren
- A Gängige Git-Befehle zum Nachschlagen
- B Quellcode
- C Glossar (oder: Was bedeutet noch mal …?)
- Fußnoten
- Index
- Über die Autorin
- Kolophon
Product information
- Title: GitHub – Eine praktische Einführung
- Author(s):
- Release date: February 2021
- Publisher(s): dpunkt
- ISBN: 9783960091417
You might also like
book
Versionsverwaltung mit Git
Von grundlegenden Funktionen über die Handhabung von Branches und Remote-Repositories bis zu Tipps und Tricks für …
book
Git Schnelleinstieg - Versionsverwaltung lernen in 14 Tagen.
Leichter Einstieg in die praktische Arbeit mit Git Auswahl sinnvoller Workfl ows und Einsatz in Teams …
book
Versionsverwaltung mit Git, 2. Auflage
Von grundlegenden Funktionen über die Handhabung von Branches und Remote-Repositorys bis zu Tipps und Tricks für …
book
Neuronale Netze und Deep Learning kapieren -- Der einfache Praxiseinstieg mit Beispielen in Python
Von den Grundlagen Neuronaler Netze über Machine Learning bis hin zu Deep-Learning-Algorithmen Anschauliche Diagramme, Anwendungsbeispiele in …