Files
Git-Schulung/06-quick-reference/cheatsheet.md
T

107 lines
3.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 📋 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)*