-
1. Erste Schritte
- 1.1 Über Versionskontrolle
- 1.2 Eine kurze Geschichte von Git
- 1.3 Was ist Git?
- 1.4 Die Kommandozeile
- 1.5 Git installieren
- 1.6 Erstmalige Git-Einrichtung
- 1.7 Hilfe bekommen
- 1.8 Zusammenfassung
-
2. Git Grundlagen
-
3. Git Branching
- 3.1 Branches im Überblick
- 3.2 Grundlegendes Branching und Merging
- 3.3 Branch-Management
- 3.4 Branching-Workflows
- 3.5 Remote-Branches
- 3.6 Rebasing
- 3.7 Zusammenfassung
-
4. Git auf dem Server
- 4.1 Die Protokolle
- 4.2 Git auf einem Server einrichten
- 4.3 Generieren Ihres SSH-Public-Keys
- 4.4 Einrichten des Servers
- 4.5 Git Daemon
- 4.6 Smart HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 Drittanbieter-Hosting-Optionen
- 4.10 Zusammenfassung
-
5. Verteiltes Git
-
6. GitHub
-
7. Git-Werkzeuge
- 7.1 Revisionsauswahl
- 7.2 Interaktives Staging
- 7.3 Stashing und Bereinigen
- 7.4 Ihre Arbeit signieren
- 7.5 Suchen
- 7.6 Historie umschreiben
- 7.7 Reset entmystifiziert
- 7.8 Fortgeschrittenes Merging
- 7.9 Rerere
- 7.10 Debugging mit Git
- 7.11 Submodule
- 7.12 Bundling
- 7.13 Ersetzen
- 7.14 Credential-Speicher
- 7.15 Zusammenfassung
-
8. Git anpassen
-
9. Git und andere Systeme
- 9.1 Git als Client
- 9.2 Migration zu Git
- 9.3 Zusammenfassung
-
10. Git-Interna
- 10.1 Plumbing und Porcelain
- 10.2 Git-Objekte
- 10.3 Git-Referenzen
- 10.4 Packfiles
- 10.5 Die Refspec
- 10.6 Übertragungsprotokolle
- 10.7 Wartung und Datenwiederherstellung
- 10.8 Umgebungsvariablen
- 10.9 Zusammenfassung
-
Anhang A: Git in anderen Umgebungen
- A1.1 Grafische Oberflächen
- A1.2 Git in Visual Studio
- A1.3 Git in Visual Studio Code
- A1.4 Git in IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine
- A1.5 Git in Sublime Text
- A1.6 Git in Bash
- A1.7 Git in Zsh
- A1.8 Git in PowerShell
- A1.9 Zusammenfassung
-
Anhang B: Git in Ihre Anwendungen einbetten
- A2.1 Kommandozeilen-Git
- A2.2 Libgit2
- A2.3 JGit
- A2.4 go-git
- A2.5 Dulwich
-
Anhang C: Git-Befehle
- A3.1 Einrichtung und Konfiguration
- A3.2 Projekte abrufen und erstellen
- A3.3 Grundlegendes Snapshotting
- A3.4 Branching und Merging
- A3.5 Projekte teilen und aktualisieren
- A3.6 Inspektion und Vergleich
- A3.7 Debugging
- A3.8 Patching
- A3.9 E-Mail
- A3.10 Externe Systeme
- A3.11 Administration
- A3.12 Plumbing-Befehle
6.1 GitHub - Kontoeinrichtung und Konfiguration
GitHub ist der größte Hoster für Git-Repositories und der zentrale Punkt der Zusammenarbeit für Millionen von Entwicklern und Projekten. Ein großer Teil aller Git-Repositories wird auf GitHub gehostet, und viele Open-Source-Projekte nutzen es für Git-Hosting, Issue-Tracking, Code-Reviews und andere Dinge. Obwohl es kein direkter Teil des Git-Open-Source-Projekts ist, besteht eine gute Chance, dass Sie bei der professionellen Nutzung von Git irgendwann mit GitHub interagieren möchten oder müssen.
Dieses Kapitel befasst sich mit der effektiven Nutzung von GitHub. Wir behandeln die Anmeldung und Verwaltung eines Kontos, die Erstellung und Nutzung von Git-Repositories, gängige Workflows zur Mitarbeit an Projekten und zur Annahme von Beiträgen zu Ihren eigenen, die programmatische Schnittstelle von GitHub und viele kleine Tipps, um Ihnen das Leben im Allgemeinen zu erleichtern.
Wenn Sie kein Interesse daran haben, GitHub zum Hosten Ihrer eigenen Projekte oder zur Zusammenarbeit mit anderen Projekten zu nutzen, die auf GitHub gehostet werden, können Sie sicher zu Git Tools springen.
Kontoeinrichtung und Konfiguration
Das Erste, was Sie tun müssen, ist die Einrichtung eines kostenlosen Benutzerkontos. Besuchen Sie einfach https://github.com, wählen Sie einen Benutzernamen, der noch nicht vergeben ist, geben Sie eine E-Mail-Adresse und ein Passwort ein und klicken Sie auf den großen grünen Button „Sign up for GitHub“.
Das Nächste, was Sie sehen werden, ist die Preisübersicht für erweiterte Pläne, aber es ist sicher, dies vorerst zu ignorieren. GitHub sendet Ihnen eine E-Mail, um die angegebene Adresse zu verifizieren. Machen Sie das; es ist ziemlich wichtig (wie wir später sehen werden).
|
Hinweis
|
GitHub bietet fast alle seine Funktionen mit kostenlosen Konten an, mit Ausnahme einiger fortgeschrittener Funktionen. Die kostenpflichtigen Pläne von GitHub umfassen fortgeschrittene Werkzeuge und Funktionen sowie erhöhte Limits für kostenlose Dienste, aber wir werden diese in diesem Buch nicht behandeln. Weitere Informationen zu den verfügbaren Plänen und deren Vergleich finden Sie unter https://github.com/pricing. |
Wenn Sie auf das Octocat-Logo oben links auf dem Bildschirm klicken, gelangen Sie zu Ihrer Dashboard-Seite. Sie sind nun bereit, GitHub zu nutzen.
SSH-Zugriff
Derzeit können Sie mit Git-Repositories über das https://-Protokoll vollständig verbinden und sich mit dem gerade eingerichteten Benutzernamen und Passwort authentifizieren. Um jedoch nur öffentliche Projekte zu klonen, müssen Sie sich nicht einmal anmelden – das gerade erstellte Konto kommt ins Spiel, wenn wir später Projekte forken und unsere Forks pushen.
Wenn Sie SSH-Remotes verwenden möchten, müssen Sie einen öffentlichen Schlüssel konfigurieren. Wenn Sie noch keinen haben, siehe Generieren Ihres SSH-Schlüssels. Öffnen Sie Ihre Kontoeinstellungen über den Link oben rechts im Fenster.
Wählen Sie dann im linken Bereich den Abschnitt „SSH keys“.
Klicken Sie von dort auf die Schaltfläche „Add an SSH key“, geben Sie Ihrem Schlüssel einen Namen, fügen Sie den Inhalt Ihrer ~/.ssh/id_rsa.pub (oder wie auch immer Sie ihn genannt haben) öffentlichen Schlüsseldatei in das Textfeld ein und klicken Sie auf „Add key“.
|
Hinweis
|
Stellen Sie sicher, dass Sie Ihrem SSH-Schlüssel einen Namen geben, den Sie sich merken können. Sie können jeden Ihrer Schlüssel benennen (z. B. „Mein Laptop“ oder „Arbeitskonto“), damit Sie, wenn Sie einen Schlüssel später widerrufen müssen, leicht erkennen können, welchen Sie suchen. |
Ihr Avatar
Als Nächstes können Sie, wenn Sie möchten, den für Sie generierten Avatar durch ein Bild Ihrer Wahl ersetzen. Gehen Sie zuerst zum Tab „Profile“ (über dem Tab „SSH Keys“) und klicken Sie auf „Upload new picture“.
Wir wählen eine Kopie des Git-Logos, das sich auf unserer Festplatte befindet, und erhalten dann die Möglichkeit, es zuzuschneiden.
Jetzt wird überall, wo Sie auf der Website interagieren, Ihr Avatar neben Ihrem Benutzernamen angezeigt.
Wenn Sie einen Avatar auf dem beliebten Gravatar-Dienst hochgeladen haben (oft für WordPress-Konten verwendet), wird dieser Avatar standardmäßig verwendet und Sie müssen diesen Schritt nicht ausführen.
Ihre E-Mail-Adressen
GitHub ordnet Ihre Git-Commits Ihrem Benutzer über die E-Mail-Adresse zu. Wenn Sie mehrere E-Mail-Adressen in Ihren Commits verwenden und möchten, dass GitHub diese ordnungsgemäß verknüpft, müssen Sie alle von Ihnen verwendeten E-Mail-Adressen zum Abschnitt „Emails“ im Administrationsbereich hinzufügen.
In Alle Ihre E-Mail-Adressen hinzufügen sehen wir einige der verschiedenen möglichen Zustände. Die oberste Adresse ist verifiziert und als primäre Adresse festgelegt, was bedeutet, dass Sie hier Benachrichtigungen und Quittungen erhalten. Die zweite Adresse ist verifiziert und kann somit als primäre Adresse festgelegt werden, wenn Sie sie wechseln möchten. Die letzte Adresse ist nicht verifiziert, was bedeutet, dass Sie sie nicht als primäre Adresse festlegen können. Wenn GitHub eine dieser Adressen in Commit-Nachrichten in einem beliebigen Repository auf der Website sieht, wird sie jetzt mit Ihrem Benutzer verknüpft.
Zwei-Faktor-Authentifizierung
Schließlich sollten Sie für zusätzliche Sicherheit unbedingt die Zwei-Faktor-Authentifizierung oder „2FA“ einrichten. Die Zwei-Faktor-Authentifizierung ist ein Authentifizierungsmechanismus, der in letzter Zeit immer beliebter wird, um das Risiko zu mindern, dass Ihr Konto kompromittiert wird, falls Ihr Passwort irgendwie gestohlen wird. Wenn Sie diese aktivieren, wird GitHub Sie nach zwei verschiedenen Authentifizierungsmethoden fragen, sodass ein Angreifer keinen Zugriff auf Ihr Konto hat, wenn eine davon kompromittiert wird.
Sie finden die Einrichtung der Zwei-Faktor-Authentifizierung unter dem Tab „Security“ in Ihren Kontoeinstellungen.
Wenn Sie auf die Schaltfläche „Set up two-factor authentication“ klicken, gelangen Sie zu einer Konfigurationsseite, auf der Sie entweder eine Telefon-App zur Generierung Ihres sekundären Codes (ein „zeitbasiertes Einmalpasswort“) verwenden oder sich von GitHub jedes Mal, wenn Sie sich anmelden müssen, einen Code per SMS senden lassen können.
Nachdem Sie die bevorzugte Methode ausgewählt und die Anweisungen zur Einrichtung von 2FA befolgt haben, ist Ihr Konto etwas sicherer und Sie müssen beim Anmelden bei GitHub zusätzlich zu Ihrem Passwort einen Code eingeben.