-
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 Ersteinrichtung
- 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
1.6 Erste Schritte - Ersteinrichtung
Ersteinrichtung
Nachdem Sie Git auf Ihrem System installiert haben, sollten Sie ein paar Dinge tun, um Ihre Git-Umgebung anzupassen. Sie müssen diese Dinge nur einmal auf jedem Computer durchführen; sie bleiben auch nach Updates bestehen. Sie können sie jederzeit ändern, indem Sie die Befehle erneut ausführen.
Git wird mit einem Werkzeug namens git config geliefert, mit dem Sie Konfigurationsvariablen abrufen und festlegen können, die alle Aspekte von Aussehen und Verhalten von Git steuern. Diese Variablen können an drei verschiedenen Orten gespeichert werden:
-
[pfad]/etc/gitconfig-Datei: Enthält Werte, die für jeden Benutzer auf dem System und alle seine Repositories gelten. Wenn Sie die Option--systemangit configübergeben, liest und schreibt es speziell aus dieser Datei. Da dies eine Systemkonfigurationsdatei ist, benötigen Sie Administrator- oder Superuser-Privilegien, um Änderungen vorzunehmen. -
~/.gitconfigoder~/.config/git/config-Datei: Werte, die persönlich für Sie, den Benutzer, spezifisch sind. Sie können Git veranlassen, speziell aus dieser Datei zu lesen und in sie zu schreiben, indem Sie die Option--globalübergeben. Dies wirkt sich auf alle Repositories aus, mit denen Sie auf Ihrem System arbeiten. -
config-Datei im Git-Verzeichnis (d. h..git/config) des von Ihnen gerade verwendeten Repositories: Spezifisch für dieses einzelne Repository. Sie können Git zwingen, mit der Option--localaus dieser Datei zu lesen und in sie zu schreiben, aber das ist tatsächlich der Standard. Wenig überraschend müssen Sie sich irgendwo in einem Git-Repository befinden, damit diese Option ordnungsgemäß funktioniert.
Jede Ebene überschreibt Werte der vorherigen Ebene, sodass Werte in .git/config Vorrang vor denen in [pfad]/etc/gitconfig haben.
Auf Windows-Systemen sucht Git nach der Datei .gitconfig im Verzeichnis $HOME (für die meisten Benutzer C:\Users\$USER). Es sucht auch weiterhin nach [pfad]/etc/gitconfig, obwohl es sich relativ zum MSys-Stammverzeichnis befindet, d. h. dort, wo Sie Git bei der Installation unter Windows entscheiden zu installieren. Wenn Sie Git für Windows Version 2.x oder neuer verwenden, gibt es auch eine systemweite Konfigurationsdatei unter C:\Documents and Settings\All Users\Application Data\Git\config unter Windows XP und unter C:\ProgramData\Git\config unter Windows Vista und neuer. Diese Konfigurationsdatei kann nur per git config -f <Datei> als Administrator geändert werden.
Sie können alle Ihre Einstellungen und deren Herkunft mit folgendem Befehl anzeigen:
$ git config --list --show-origin
Ihre Identität
Das Erste, was Sie nach der Installation von Git tun sollten, ist, Ihren Benutzernamen und Ihre E-Mail-Adresse festzulegen. Dies ist wichtig, da jede Git-Commit-Operation diese Informationen verwendet und sie unveränderlich in die von Ihnen erstellten Commits eingebettet werden.
$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com
Auch hier müssen Sie dies nur einmal tun, wenn Sie die Option --global übergeben, da Git dann diese Informationen immer für Ihren Benutzer auf diesem System verwendet. Wenn Sie dies für bestimmte Projekte mit einem anderen Namen oder einer anderen E-Mail-Adresse überschreiben möchten, können Sie den Befehl ohne die Option --global ausführen, wenn Sie sich in diesem Projekt befinden.
Viele GUI-Tools helfen Ihnen dabei, wenn Sie sie zum ersten Mal starten.
Ihr Editor
Nachdem Ihre Identität eingerichtet ist, können Sie den Standard-Texteditor konfigurieren, der verwendet wird, wenn Git Sie auffordert, eine Nachricht einzugeben. Wenn er nicht konfiguriert ist, verwendet Git den Standardeditor Ihres Systems.
Wenn Sie einen anderen Texteditor wie Emacs verwenden möchten, können Sie Folgendes tun:
$ git config --global core.editor emacs
Auf einem Windows-System müssen Sie den vollständigen Pfad zur ausführbaren Datei angeben, wenn Sie einen anderen Texteditor verwenden möchten. Dies kann je nachdem, wie Ihr Editor verpackt ist, variieren.
Im Falle von Notepad++, einem beliebten Programmiereditor, möchten Sie wahrscheinlich die 32-Bit-Version verwenden, da die 64-Bit-Version zum Zeitpunkt des Schreibens nicht alle Plugins unterstützt. Wenn Sie auf einem 32-Bit-Windows-System sind oder eine 64-Bit-Version Ihres Editors auf einem 64-Bit-System haben, würden Sie Folgendes eingeben:
$ git config --global core.editor "'C:/Program Files/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
|
Hinweis
|
Vim, Emacs und Notepad++ sind beliebte Texteditoren, die oft von Entwicklern auf Unix-basierten Systemen wie Linux und macOS oder einem Windows-System verwendet werden. Wenn Sie einen anderen Editor oder eine 32-Bit-Version verwenden, finden Sie spezifische Anweisungen, wie Sie Ihren bevorzugten Editor mit Git unter git config core.editor Befehlen einrichten. |
|
Warnung
|
Sie werden feststellen, dass Sie in einen sehr verwirrenden Zustand geraten können, wenn Git versucht, ihn zu starten, wenn Sie Ihren Editor nicht wie hier beschrieben einrichten. Ein Beispiel unter Windows kann ein vorzeitig beendeter Git-Vorgang während einer von Git initiierten Bearbeitung sein. |
Ihr Standard-Branchname
Standardmäßig erstellt Git einen Branch namens master, wenn Sie ein neues Repository mit git init erstellen. Ab Git Version 2.28 können Sie einen anderen Namen für den initialen Branch festlegen.
Um main als Standard-Branchnamen festzulegen, tun Sie Folgendes:
$ git config --global init.defaultBranch main
Überprüfung Ihrer Einstellungen
Wenn Sie Ihre Konfigurationseinstellungen überprüfen möchten, können Sie den Befehl git config --list verwenden, um alle Einstellungen aufzulisten, die Git zu diesem Zeitpunkt finden kann:
$ git config --list
user.name=John Doe
user.email=johndoe@example.com
color.status=auto
color.branch=auto
color.interactive=auto
color.diff=auto
...
Sie sehen möglicherweise Schlüssel mehr als einmal, da Git denselben Schlüssel aus verschiedenen Dateien liest (z. B. [pfad]/etc/gitconfig und ~/.gitconfig). In diesem Fall verwendet Git den letzten Wert für jeden eindeutigen Schlüssel, den es sieht.
Sie können auch überprüfen, was Git für den Wert eines bestimmten Schlüssels hält, indem Sie git config <schlüssel> eingeben.
$ git config user.name
John Doe
|
Hinweis
|
Da Git denselben Wert für eine Konfigurationsvariable aus mehr als einer Datei lesen kann, ist es möglich, dass Sie einen unerwarteten Wert für eine dieser Variablen haben und nicht wissen warum. In solchen Fällen können Sie Git nach dem Ursprung dieses Werts abfragen, und es wird Ihnen mitteilen, welche Konfigurationsdatei das letzte Wort bei der Festlegung dieses Werts hatte.
|