chore: initial training material setup

This commit is contained in:
2026-05-12 20:34:39 +02:00
commit 2314a14916
20 changed files with 1865 additions and 0 deletions
+106
View File
@@ -0,0 +1,106 @@
# 📋 Quick Reference Git Cheatsheet
Die wichtigsten Git-Befehle auf einen Blick.
---
## Setup
| Befehl | Was er macht | Beispiel |
|--------|-------------|---------|
| `git config --global user.name` | Deinen Namen setzen | `git config --global user.name "Anna Muster"` |
| `git config --global user.email` | E-Mail setzen | `git config --global user.email "anna@example.com"` |
| `git config --list` | Alle Einstellungen anzeigen | `git config --list` |
---
## Lokale Änderungen
| Befehl | Was er macht | Beispiel |
|--------|-------------|---------|
| `git init` | Neues Repo anlegen | `git init` |
| `git status` | Aktuellen Zustand prüfen | `git status` |
| `git add <datei>` | Datei stagen | `git add README.md` |
| `git add .` | Alle Änderungen stagen | `git add .` |
| `git commit -m "..."` | Commit erstellen | `git commit -m "feat: Login hinzugefügt"` |
| `git diff` | Unstaged Änderungen ansehen | `git diff` |
| `git diff --staged` | Staged Änderungen ansehen | `git diff --staged` |
| `git restore <datei>` | Lokale Änderungen verwerfen | `git restore index.html` |
| `git restore --staged <datei>` | Datei aus Staging Area entfernen | `git restore --staged index.html` |
---
## History
| Befehl | Was er macht | Beispiel |
|--------|-------------|---------|
| `git log` | Vollständige Commit-Historie | `git log` |
| `git log --oneline` | Kompakte Übersicht | `git log --oneline` |
| `git log --all --graph` | Alle Branches grafisch | `git log --all --oneline --graph` |
| `git show <hash>` | Einzelnen Commit ansehen | `git show a3f9c12` |
---
## Branches
| Befehl | Was er macht | Beispiel |
|--------|-------------|---------|
| `git branch` | Alle lokalen Branches | `git branch` |
| `git branch <name>` | Neuen Branch erstellen | `git branch feature/login` |
| `git switch <name>` | Zu Branch wechseln | `git switch feature/login` |
| `git switch -c <name>` | Branch erstellen & wechseln | `git switch -c feature/login` |
| `git merge <name>` | Branch in aktuellen mergen | `git merge feature/login` |
| `git branch -d <name>` | Branch löschen | `git branch -d feature/login` |
| `git merge --abort` | Laufenden Merge abbrechen | `git merge --abort` |
---
## Remote
| Befehl | Was er macht | Beispiel |
|--------|-------------|---------|
| `git remote -v` | Remote-URLs anzeigen | `git remote -v` |
| `git remote add` | Remote verknüpfen | `git remote add origin <URL>` |
| `git push -u origin main` | Ersten Push + Tracking setzen | `git push -u origin main` |
| `git push` | Commits hochladen | `git push` |
| `git pull` | Commits herunterladen & mergen | `git pull` |
| `git fetch` | Commits holen, nicht mergen | `git fetch` |
| `git clone <url>` | Repo herunterladen | `git clone https://github.com/...` |
---
## Notfall
| Befehl | Was er macht | Beispiel |
|--------|-------------|---------|
| `git stash` | Änderungen temporär wegräumen | `git stash` |
| `git stash pop` | Weggeräumte Änderungen zurückholen | `git stash pop` |
| `git revert <hash>` | Commit rückgängig machen (sicher!) | `git revert a3f9c12` |
| `git merge --abort` | Merge abbrechen | `git merge --abort` |
---
## Datei-Zustände
```mermaid
stateDiagram-v2
[*] --> Untracked : Neue Datei erstellt
Untracked --> Staged : git add
Staged --> Committed : git commit
Committed --> Modified : Datei bearbeitet
Modified --> Staged : git add
Staged --> Modified : git restore --staged
Modified --> Committed : git restore (Änderungen verwerfen)
Committed --> [*]
```
| Zustand | Bedeutung |
|---------|-----------|
| **Untracked** | Git kennt die Datei noch nicht |
| **Modified** | Datei geändert, aber nicht gestagter |
| **Staged** | Bereit für den nächsten Commit |
| **Committed** | Sicher in der Versionshistorie gespeichert |
---
*Zurück zur [Startseite](../README.md)*