# Git konfigurieren: Name und E-Mail-Adresse einrichten ⚙️

Bevor du deinen ersten Commit machst, solltest du Git mitteilen, **wer du bist**. Das klingt vielleicht nach einer Formalität, hat aber einen sehr konkreten Grund.

---

## Warum ist diese Konfiguration wichtig?

Jeder Commit, den du in Git erstellst, wird mit einem **Autor** versehen – also mit einem Namen und einer E-Mail-Adresse. Diese Informationen werden **dauerhaft in der Versionshistorie gespeichert** und sind für jeden sichtbar, der Zugriff auf das Repository hat.

Das ist aus mehreren Gründen relevant:

- **Nachvollziehbarkeit:** In einem Projekt (egal ob allein oder im Team) kannst du später genau sehen, *wer* eine bestimmte Änderung gemacht hat. Das hilft beim Debugging und bei der Zusammenarbeit enorm.
- **Zuordnung auf Plattformen wie GitHub:** Wenn deine konfigurierte E-Mail-Adresse mit deinem GitHub-Konto verknüpft ist, werden deine Commits automatisch deinem Profil zugeordnet – inklusive Profilbild und Verlinkung.
- **Professionalität:** Commits mit „Unknown" oder einer kryptischen Kennung wirken unprofessionell und erschweren die Zusammenarbeit.

---

## So richtest du Name und E-Mail ein

Öffne ein Terminal (unter Windows z. B. *Git Bash*, *PowerShell* oder *CMD*; unter macOS/Linux das normale Terminal) und führe diese beiden Befehle aus:

```bash
git config --global user.name "Dein Name"
git config --global user.email "deine.email@beispiel.de"
```

Ersetze dabei natürlich die Platzhalter durch deine echten Daten. Ein konkretes Beispiel:

```bash
git config --global user.name "Max Mustermann"
git config --global user.email "max.mustermann@gmail.com"
```

> 💡 **Hinweis zur E-Mail:** Verwende am besten dieselbe E-Mail-Adresse, die du auch bei GitHub (oder einer anderen Plattform) nutzt. So werden deine Commits korrekt zugeordnet.

---

## Was bedeutet `--global`?

Die Option `--global` sorgt dafür, dass diese Einstellungen **für alle Git-Repositories** auf deinem Computer gelten. Die Konfiguration wird in einer Datei namens `.gitconfig` in deinem Benutzerverzeichnis gespeichert.

Falls du für ein *einzelnes Projekt* andere Daten verwenden möchtest (z. B. eine Firmen-E-Mail für berufliche Projekte), kannst du die Konfiguration **ohne** `--global` im jeweiligen Repository-Ordner ausführen:

```bash
git config user.name "Firmenname Max"
git config user.email "max@firma.de"
```

Diese lokale Einstellung überschreibt dann die globale – aber nur für dieses eine Repository.

---

## Überprüfen, ob die Konfiguration funktioniert hat

Mit diesen Befehlen kannst du dir anzeigen lassen, was Git aktuell gespeichert hat:

```bash
git config --global user.name
git config --global user.email
```

Die Ausgabe sollte dann entsprechend dein Name und deine E-Mail sein. Alternativ kannst du dir *alle* globalen Einstellungen auf einmal anzeigen lassen:

```bash
git config --global --list
```

---

## Was passiert, wenn du das nicht konfigurierst? 🚨

Wenn du versuchst, einen Commit zu erstellen, ohne Name und E-Mail konfiguriert zu haben, passiert Folgendes:

1. **Git verweigert den Commit** und zeigt eine Fehlermeldung wie diese:

   ```
   Author identity unknown

   *** Please tell me who you are.

   Run
     git config --global user.email "you@example.com"
     git config --global user.name "Your Name"
   ```

2. **Kein Commit wird erstellt**, bis du die Konfiguration nachholst.

Das ist also kein stilles Problem, das später Ärger macht – Git zwingt dich förmlich dazu, diese Angaben zu machen, bevor du loslegst. Trotzdem ist es besser, das *einmal sauber am Anfang* zu erledigen, als bei jedem neuen Projekt darüber zu stolpern.

---

## Zusammenfassung 📋

| Befehl | Wirkung |
|--------|---------|
| `git config --global user.name "Name"` | Setzt deinen Namen für alle Repos |
| `git config --global user.email "email"` | Setzt deine E-Mail für alle Repos |
| `git config --global --list` | Zeigt alle globalen Einstellungen |
| `git config user.name` (ohne `--global`) | Setzt den Namen nur für das aktuelle Repo |

Nach dieser einmaligen Konfiguration bist du bereit für deinen ersten Commit! 🎉