-
1. Erste Schritte
-
2. Git Grundlagen
-
3. Git Branching
- 3.1 Branches auf einen Blick
- 3.2 Einfaches 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 Erstellung eines SSH-Public-Keys
- 4.4 Einrichten des Servers
- 4.5 Git-Daemon
- 4.6 Smart HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 Von Drittanbietern gehostete Optionen
- 4.10 Zusammenfassung
-
5. Verteiltes Git
-
6. GitHub
-
7. Git Tools
- 7.1 Revisions-Auswahl
- 7.2 Interaktives Stagen
- 7.3 Stashen und Bereinigen
- 7.4 Ihre Arbeit signieren
- 7.5 Suchen
- 7.6 Den Verlauf umschreiben
- 7.7 Reset entzaubert
- 7.8 Fortgeschrittenes Merging
- 7.9 Rerere
- 7.10 Debuggen mit Git
- 7.11 Submodule
- 7.12 Bundling
- 7.13 Replace (Ersetzen)
- 7.14 Anmeldeinformationen speichern
- 7.15 Zusammenfassung
-
8. Git einrichten
- 8.1 Git Konfiguration
- 8.2 Git-Attribute
- 8.3 Git Hooks
- 8.4 Beispiel für Git-forcierte Regeln
- 8.5 Zusammenfassung
-
9. Git und andere Systeme
- 9.1 Git als Client
- 9.2 Migration zu Git
- 9.3 Zusammenfassung
-
10. Git Interna
-
A1. Anhang A: Git in anderen Umgebungen
- A1.1 Grafische Schnittstellen
- 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
-
A2. Anhang B: Git in Ihre Anwendungen einbetten
- A2.1 Die Git-Kommandozeile
- A2.2 Libgit2
- A2.3 JGit
- A2.4 go-git
- A2.5 Dulwich
-
A3. Anhang C: Git Kommandos
- A3.1 Setup und Konfiguration
- A3.2 Projekte importieren und erstellen
- A3.3 Einfache Snapshot-Funktionen
- A3.4 Branching und Merging
- A3.5 Projekte gemeinsam nutzen und aktualisieren
- A3.6 Kontrollieren und Vergleichen
- A3.7 Debugging
- A3.8 Patchen bzw. Fehlerkorrektur
- A3.9 E-mails
- A3.10 Externe Systeme
- A3.11 Administration
- A3.12 Basisbefehle
1.6 Erste Schritte - Git Basis-Konfiguration
Git Basis-Konfiguration
Nachdem Git jetzt auf Ihrem System installiert ist, sollten Sie Ihre Git-Konfiguration noch anpassen. Dies muss nur einmalig auf dem jeweiligen System durchgeführt werden. Die Konfiguration bleibt bestehen, wenn Sie Git auf eine neuere Version aktualisieren. Die Git-Konfiguration kann auch jederzeit geändert werden, indem die nachfolgenden Befehle einfach noch einmal ausgeführt werden.
Git umfasst das Werkzeug git config
, welches die Möglichkeit bietet, Konfigurationswerte zu verändern. Auf diese Weise können Sie anpassen, wie Git aussieht und arbeitet.
Die Konfiguration ist an drei verschiedenen Orten gespeichert:
-
Die Datei
[path]/etc/gitconfig
: enthält Werte, die für jeden Benutzer auf dem System und alle seine Repositories gelten. Wenn Sie die Option--system
angit config
übergeben, liest und schreibt sie spezifisch aus dieser Datei. Da es sich um eine Systemkonfigurationsdatei handelt, benötigen Sie Administrator- oder Superuser-Rechte, um Änderungen daran vorzunehmen. -
Die Datei
~/.gitconfig
oder~/.config/git/config
: enthält Werte, die für Sie, den Benutzer, persönlich bestimmt sind. Sie können Git dazu bringen, diese Datei gezielt zu lesen und zu schreiben, indem Sie die Option--global
übergeben, und dies betrifft alle der Repositories, mit denen Sie auf Ihrem System arbeiten. -
Die Datei
config
im Git-Verzeichnis (also.git/config
) des jeweiligen Repositories, das Sie gerade verwenden: Sie können Git mit der Option--local
zwingen, aus dieser Datei zu lesen und in sie zu schreiben, das ist in der Regel die Standardoption. (Es dürfte Sie nicht überraschen, dass Sie sich irgendwo in einem Git-Repository befinden müssen, damit diese Option ordnungsgemäß funktioniert.)Jede Ebene überschreibt Werte der vorherigen Ebene, so dass Werte in `.git/config` diejenigen in `[path]/etc/gitconfig` aushebeln.
Auf Windows-Systemen sucht Git nach der Datei .gitconfig
im $HOME
Verzeichnis (normalerweise zeigt $HOME
bei den meisten Systemen auf C:\Users\$USER
).
Git schaut immer nach [path]/etc/gitconfig
, auch wenn die sich relativ zu dem MSys-Wurzelverzeichnis befindet, dem Verzeichnis in das Sie Git installiert haben.
Wenn Sie eine Version 2.x oder neuer von Git für Windows verwenden, gibt es auch eine Konfigurationsdatei auf Systemebene unter
C:\Dokumente und Einstellungen\Alle Benutzer\Anwendungsdaten\Git\config
unter Windows XP und unter C:\ProgramData\Git\config
unter Windows Vista und neuer.
Diese Konfigurationsdatei kann nur von git config -f <file>
als Admin geändert werden.
Sie können sich alle Ihre Einstellungen ansehen sehen, wo sie herkommen:
$ git config --list --show-origin
Ihre Identität
Nachdem Sie Git installiert haben, sollten Sie als allererstes Ihren Namen und Ihre E-Mail-Adresse in Git konfigurieren. Das ist insofern wichtig, da jeder Git-Commit diese Informationen verwendet und sie unveränderlich in die Commits eingearbeitet werden, die Sie erstellen:
$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com
Wie schon erwähnt, brauchen Sie diese Konfiguration nur einmal vorzunehmen, wenn Sie die Option --global
verwenden. Auf Grund der oben erwähnten Prioritäten gilt das dann für alle Ihre Projekte.
Wenn Sie für ein spezielles Projekt einen anderen Namen oder eine andere E-Mail-Adresse verwenden möchten, können Sie den Befehl ohne die Option --global
innerhalb des Projektes ausführen.
Viele der grafischen Oberflächen helfen einem bei diesem Schritt, wenn Sie sie zum ersten Mal ausführen.
Ihr Editor
Jetzt, da Ihre Identität eingerichtet ist, können Sie den Standard-Texteditor konfigurieren, der verwendet wird, wenn Git Sie zum Eingeben einer Nachricht auffordert. Normalerweise verwendet Git den Standard-Texteditor des jeweiligen Systems.
Wenn Sie einen anderen Texteditor, z.B. Emacs, verwenden wollen, können Sie das wie folgt festlegen:
$ git config --global core.editor emacs
Wenn Sie auf einem Windows-System einen anderen Texteditor verwenden möchten, müssen Sie den vollständigen Pfad zu seiner ausführbaren Datei angeben. Dies kann, je nachdem, wie Ihr Editor eingebunden ist, unterschiedlich sein.
Im Falle von Notepad++, einem beliebten Programmiereditor, sollten Sie wahrscheinlich die 32-Bit-Version verwenden, da die 64-Bit-Version zum Zeitpunkt der Erstellung nicht alle Plug-Ins unterstützt. Beim Einsatz auf einem 32-Bit-Windows-System oder einem 64-Bit-Editor auf einem 64-Bit-System geben Sie etwa Folgendes ein:
$ git config --global core.editor "'C:/Program Files/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
Anmerkung
|
Vim, Emacs und Notepad++ sind beliebte Texteditoren, die von Entwicklern häufig 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 in git config core.editor commands spezielle Anweisungen, wie Sie Ihren bevorzugten Editor mit Git einrichten können. |
Warnung
|
Wenn Sie Git nicht so konfigurieren, dass es Ihren Texteditor verwendet und Sie keine Ahnung davon haben, wie man Vim oder Emacs benutzt, werden Sie ein wenig überfordert sein, wenn diese zum ersten Mal von Git gestartet werden. Ein Beispiel auf einem Windows-System könnte ein vorzeitig beendeter Git-Vorgang während einer von Git initiierten Editor-Bearbeitung sein. |
Der standardmäßige Branch-Name
In der Voreinstellung wird Git einen Branch mit dem Namen master erzeugen, wenn Sie ein neues Repository mit git init
erstellen.
Ab der Git-Version 2.28 können Sie einen abweichenden Namen für den initialen Branch festlegen.
So konfigurieren Sie main als Vorgabe für den Branch-Namen:
$ git config --global init.defaultBranch main
Einstellungen überprüfen
Wenn Sie Ihre Konfigurationseinstellungen überprüfen möchten, können Sie mit dem Befehl git config --list
alle Einstellungen auflisten, die Git derzeit 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
...
Manche Parameter werden möglicherweise mehrfach aufgelistet, weil Git denselben Parameter in verschiedenen Dateien (z.B. [path]/etc/gitconfig
und ~/.gitconfig
) gefunden hat.
In diesem Fall verwendet Git dann den jeweils zuletzt aufgelisteten Wert.
Außerdem können Sie mit dem Befehl git config <key>
prüfen, welchen Wert Git für einen bestimmten Parameter verwendet:
$ git config user.name
John Doe
Anmerkung
|
Da Git möglicherweise den gleichen Wert der Konfigurationsvariablen aus mehr als einer Datei liest, ist es möglich, dass Sie einen unerwarteten Wert für einen dieser Werte haben und nicht wissen, warum. In solchen Fällen können Sie Git nach dem Ursprung (engl. origin) für diesen Wert fragen, und es wird Ihnen sagen, mit welcher Konfigurationsdatei der Wert letztendlich festgelegt wurde:
|