# 🔄 Synchronisation iPhone ↔ Git — Vollständige Anleitung

## 1. Vorbereitung (einmalig)

### A. Git-Repo auf dem Server erstellen
1. Erstelle ein leeres GitHub/GitLab-Repo (z.B. `obsidian-vault`)
2. Kopiere die Repo-URL (z.B. `git@github.com:deinname/obsidian-vault.git`)

### B. Git-Repo vom Desktop initialisieren
```bash
cd ~/Documents/Obsidian\ Vault
git init
git add .
git commit -m "Initial Vault-Setup"
git remote add origin <deine-repo-url>
git push -u origin main
```

### C. iPhone einrichten
1. **Obsidian Mobile** aus dem App Store installieren
2. Obsidian öffnen → **Open folder as vault** → **Create new vault**
3. Namen wählen (z.B. "JARVIS Vault") → **Create on iPhone**
4. **Settings → Files & Links → External links** → **Open external links in browser** (deaktivieren)

---

## 2. Synchronisation einrichten (3 Optionen)

### Option A: Git-Shortcuts (empfohlen, kostenlos)

#### Schritt 1: Git-Repo auf dem iPhone klonen
1. Installiere **Termux** aus dem F-Droid Store (NICHT Play Store — veraltete Version!)
2. In Termux:
   ```bash
   pkg update && pkg upgrade
   pkg install git
   cd ~/Documents
   git clone <deine-repo-url> Obsidian-Vault
   ```
3. In Obsidian: **Settings → Vault → Select vault folder** → `~/Documents/Obsidian-Vault`
4. Vault wählen → **Open**

#### Schritt 2: Push-Shortcut erstellen
1. **Shortcuts** App öffnen → **"+"** → **Add Action**
2. Suche: **Run Shell Command** (oder **Scripting** → **Run Python Script**)
3. Wenn du **Run Shell Command** hast:
   - Befehl: `cd ~/Documents/Obsidian-Vault && git add . && git commit -m "Sync: $(date +%Y-%m-%d %H:%M)" && git push`
   - **Show When Run:** Yes
   - **Present Results:** Alert
4. Shortcut benennen: **Vault Push**
5. Zum Home Screen hinzufügen (3 Punkte → **Add to Home Screen**)

#### Schritt 3: Pull-Shortcut erstellen
1. Neues Shortcut → **Run Shell Command**
2. Befehl: `cd ~/Documents/Obsidian-Vault && git pull`
3. Shortcut benennen: **Vault Pull**
4. Zum Home Screen hinzufügen

### Option B: Obsidian Sync (kostenpflichtig, einfachste)
1. **Settings → Sync** in Obsidian Mobile
2. Account erstellen (~$10/ Monat)
3. Gleichen Account auf Desktop Obsidian einloggen
4. Automatische Synchronisation — kein Git nötig

### Option C: iCloud (einfach, aber problematisch mit Git)
1. Vault auf iCloud Drive speichern
2. Auf Desktop: iCloud Drive → Vault-Ordner öffnen
3. **ACHTUNG:** Nicht kombinieren mit Git — iCloud kann Git-Integrität beschädigen

---

## 3. Täglicher Workflow

### Auf dem iPhone
```
1. Shortcuts-Widget auf dem Homescreen
2. Neue Notiz:
   - Obsidian öffnen
   - "Neue Notiz" → Titel eingeben
   - Inhalt tippen (Stichpunkte reichen)
   - Tags setzen: #eingang #gesundheit #politik etc.
   - Schliessen
3. Git Push:
   - Shortcut "Vault Push" tippen
   - Feedback: "Vault synced ✓"
```

### Auf dem Desktop
```
1. Terminal: git pull (falls nicht automatisiert)
2. Obsidian Desktop öffnen
3. Sortieren: Notizen aus 01_Eingang/ in Zielordner verschieben
4. Template-Notizen erstellen (Tagebuch, Arztbesuche etc.)
5. Git push
```

---

## 4. Konflikte lösen

### Typische Konfliktsituationen
- Beide Geräte haben dieselbe Notiz editiert
- Git kann nicht pushen (Remote hat neuere Änderungen)

### Lösung
```bash
# 1. Status prüfen
git status

# 2. Pull mit Merge
git pull --rebase

# 3. Bei Konflikten:
#    - Conflict-Dateien öffnen (markiert mit <<<<<<<)
#    - Manuell auflösen
#    - git add .
#    - git commit -m "Merge conflict resolved"

# 4. Push
git push
```

### Regel: Pull vor Push
Immer zuerst `git pull`, dann `git add .`, dann `git push`.

---

## 5. Backup-Strategie

### Täglich
- Git Push vom iPhone (Capture)
- Git Push vom Desktop (Sortieren)

### Wöchentlich (Sonntags)
```bash
git checkout -b backup-$(date +%Y-%m-%d)
git push origin backup-$(date +%Y-%m-%d)
git checkout main
```

### Monatlich
- Vollständiges Backup auf externe Festplatte/Cloud
- `git clone --mirror <repo-url>` für 1:1 Backup

---

## 6. Quick-Referenz

| Aktion | Befehl |
|--------|--------|
| Status | `git status` |
| Pull | `git pull` |
| Push | `git push` |
| Commit | `git add . && git commit -m "Nachricht"` |
| Branch erstellen | `git checkout -b name` |
| Backup-Branch | `git checkout -b backup-$(date +%Y-%m-%d)` |
| Zum Hauptbranch | `git checkout main` |
| Verlauf | `git log --oneline -10` |

---

## 7. Troubleshooting

### Obsidian zeigt leeren Vault
- Check: **Settings → Vault → Open folder as vault**
- Pfad muss `~/Documents/Obsidian-Vault` sein
- Ordner muss `.git` enthalten

### Git push schlägt fehl
- `git pull` zuerst ausführen
- Bei Auth-Fehler: SSH-Key prüfen (`ssh -T git@github.com`)

### Konflikte nach iCloud-Sync
- `.git`-Ordner von iCloud ignorieren lassen
- Lieber Option A (Termux) oder Option B (Obsidian Sync) verwenden