Git 🌙
Chapters ▾ 2nd Edition

1.6 Erste Schritte - Git Basis-Konfiguration

Git Basis-Konfiguration

Nachdem Git jetzt auf deinem System installiert ist, solltest du deine Git-Konfiguration noch anpassen. Dies muss nur einmalig auf dem jeweiligen System durchgeführt werden. Die Konfiguration bleibt bestehen, wenn du Git auf eine neuere Version aktualisierst. 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 kannst du anpassen, wie Git aussieht und arbeitet. Die Konfiguration ist an drei verschiedenen Orten gespeichert:

  1. Die Datei [path]/etc/gitconfig: enthält Werte, die für jeden Benutzer auf dem System und alle seine Repositories gelten. Wenn du die Option --system an git config übergibst, liest und schreibt sie aus dieser Datei. Da es sich um eine Systemkonfigurationsdatei handelt, benötigst du Administrator- oder Superuser-Rechte, um Änderungen daran vorzunehmen.

  2. Die Datei ~/.gitconfig oder ~/.config/git/config: enthält Werte, die für dich, den Benutzer, persönlich bestimmt sind. Du kannst Git dazu bringen, diese Datei gezielt zu lesen und zu schreiben, indem du die Option --global übergibst. Dies betrifft alle Repositories, mit denen du auf deinem System arbeitest.

  3. Die Datei config im Git-Verzeichnis (also .git/config) des jeweiligen Repositories, das du gerade verwendest: Du kannst 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 klar sein, dass du dich irgendwo in einem Git-Repository befinden musst, damit diese Option ordnungsgemäß funktioniert.)

    Jede Ebene überschreibt Werte der vorherigen Ebene, so dass Werte in `.git/config` diejenigen in `[path]/etc/gitconfig` aushebelt.

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 du Git installiert hast. Wenn du eine Version 2.x oder neuer von Git für Windows verwendest, 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.

Du kannst dir alle Git Einstellungen ansehen und wo sie herkommen mit:

$ git config --list --show-origin

Deine Identität

Nachdem du Git installiert hast, solltest du als allererstes deinen Namen und deine 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 du erstellst:

$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com

Wie schon erwähnt, brauchst du diese Konfiguration nur einmal vorzunehmen, wenn du die Option --global verwendest. Auf Grund der oben erwähnten Prioritäten gilt das dann für alle deine Projekte. Wenn du für ein spezielles Projekt einen anderen Namen oder eine andere E-Mail-Adresse verwenden möchtest, kannst du den Befehl ohne die Option --global innerhalb des Projektes ausführen.

Viele der grafischen Oberflächen helfen einem bei diesem Schritt, wenn du sie zum ersten Mal ausführst.

Dein Editor

Jetzt, da deine Identität eingerichtet ist, kannst du den Standard-Texteditor konfigurieren, der verwendet wird, wenn Git dich zum Eingeben einer Nachricht auffordert. Normalerweise verwendet Git den Standard-Texteditor des jeweiligen Systems.

Wenn du einen anderen Texteditor, z.B. Emacs, verwenden willst, kannst du das wie folgt festlegen:

$ git config --global core.editor emacs

Wenn du auf einem Windows-System einen anderen Texteditor verwenden möchtest, musst du den vollständigen Pfad zu seiner ausführbaren Datei angeben. Dies kann, je nachdem, wie dein Editor eingebunden ist, unterschiedlich sein.

Im Falle von Notepad++, einem beliebten Programmiereditor, solltest du 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 gibst du 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 du einen anderen Editor oder eine 32-Bit-Version verwenden, findest du in git config core.editor commands spezielle Anweisungen, wie du deinen bevorzugten Editor mit Git einrichten kannst.

Warnung

Wenn du Git nicht so konfigurierst, dass es deinen Texteditor verwendet und du keine Ahnung davon hast, wie man Vim oder Emacs benutzt, wirst du 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 du ein neues Repository mit git init erstellst. Ab der Git-Version 2.28 kannst du einen abweichenden Namen für den initialen Branch festlegen.

So konfigurierst du main als Vorgabe für den Branch-Namen:

$ git config --global init.defaultBranch main

Einstellungen überprüfen

Wenn du deine Konfigurationseinstellungen überprüfen möchtest, kannst du 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 kannst du 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 du einen unerwarteten Wert für einen dieser Werte erhältst und nicht weißt, warum. In solchen Fällen kannst du Git nach dem Ursprung (engl. origin) für diesen Wert fragen. Git wird dir sagen, mit welcher Konfigurationsdatei der Wert letztendlich festgelegt wurde:

$ git config --show-origin rerere.autoUpdate
file:/home/johndoe/.gitconfig	false
scroll-to-top