docs/dev_workflow.md aktualisiert
This commit is contained in:
parent
d49da1b5fe
commit
78d8ab11ed
|
|
@ -1,6 +1,6 @@
|
|||
# Mindnet v2.2 – Entwickler-Workflow
|
||||
**Datei:** `DEV_WORKFLOW.md`
|
||||
**Stand:** 2025-12-07 (Aktualisiert nach WP-04b)
|
||||
**Stand:** 2025-12-07 (Aktualisiert: Sync-First Strategie)
|
||||
|
||||
Dieses Handbuch beschreibt den Entwicklungszyklus zwischen **Windows PC** (IDE), **Raspberry Pi** (Gitea) und **Beelink** (Runtime/Server).
|
||||
|
||||
|
|
@ -22,12 +22,14 @@ Dieses Handbuch beschreibt den Entwicklungszyklus zwischen **Windows PC** (IDE),
|
|||
|
||||
Hier erstellst du die neue Funktion in einer sicheren Umgebung.
|
||||
|
||||
1. **Sicherstellen, dass Git bereit ist:**
|
||||
* Öffne VS Code.
|
||||
* Unten links in der blauen Leiste sollte der aktuelle Branch stehen (z.B. `main`).
|
||||
1. **Basis aktualisieren (WICHTIG!):**
|
||||
Bevor du startest, muss dein lokales `main` auf dem Stand des Servers sein.
|
||||
* Klicke unten links auf den aktuellen Branch und wähle **`main`**.
|
||||
* Klicke links im Menü "Source Control" auf die **drei Punkte (...)** -> **Pull** (oder das Synchronisieren-Symbol).
|
||||
* *Erst jetzt hast du alle Dateien!*
|
||||
|
||||
2. **Branch erstellen (WICHTIG):**
|
||||
* Klicke unten links auf den Branch-Namen.
|
||||
2. **Branch erstellen:**
|
||||
* Klicke wieder unten links auf `main`.
|
||||
* Wähle `+ Create new branch...`.
|
||||
* Gib den Namen ein: `feature/was-ich-tue` (z.B. `feature/wp04b-explanation`).
|
||||
* Drücke **Enter**.
|
||||
|
|
@ -69,9 +71,9 @@ Hier prüfst du, ob dein neuer Code auf dem echten Server läuft.
|
|||
```
|
||||
|
||||
5. **Test-Server neustarten (WICHTIG):**
|
||||
Falls noch ein alter Prozess läuft, musst du ihn beenden, damit der neue Code geladen wird.
|
||||
Falls noch ein alter Prozess läuft, musst du ihn beenden.
|
||||
* Drücke `Strg + C` falls der Server noch im Vordergrund läuft.
|
||||
* Oder nutze `pkill -f "uvicorn app.main:app"` um Hintergrunde-Prozesse zu stoppen.
|
||||
* Oder nutze `pkill -f "uvicorn app.main:app"`.
|
||||
|
||||
Starten auf **Port 8002**:
|
||||
```bash
|
||||
|
|
@ -127,6 +129,7 @@ Damit das Chaos nicht wächst, löschen wir den fertigen Branch.
|
|||
```
|
||||
3. **VS Code:**
|
||||
* Auf `main` wechseln.
|
||||
* Sync drücken (um Löschung vom Server zu erfahren).
|
||||
* `F1` -> `Git: Delete Branch` -> Branch auswählen.
|
||||
|
||||
---
|
||||
|
|
@ -135,23 +138,23 @@ Damit das Chaos nicht wächst, löschen wir den fertigen Branch.
|
|||
|
||||
| Wo? | Befehl | Was tut es? |
|
||||
| :--- | :--- | :--- |
|
||||
| **VS Code** | `Klick auf Branch-Namen` | Branch erstellen oder wechseln. |
|
||||
| **VS Code** | `Sync Changes` | Lädt Code zu Gitea hoch. |
|
||||
| **Beelink** | `cd ~/mindnet_dev` | Gehe in den Test-Ordner. |
|
||||
| **VS Code** | `Sync (auf main)` | **WICHTIG:** Holt neuesten Code vom Server. |
|
||||
| **VS Code** | `Klick auf Branch` | Branch erstellen oder wechseln. |
|
||||
| **Beelink** | `source .venv/bin/activate` | **Aktiviert Python-Umgebung.** |
|
||||
| **Beelink** | `git fetch` | Aktualisiert die Liste der Remote-Branches. |
|
||||
| **Beelink** | `git branch -r` | Zeigt alle Branches auf dem Server an. |
|
||||
| **Beelink** | `git checkout <name>` | Wechsle auf einen anderen Branch. |
|
||||
| **Beelink** | `git fetch` | Aktualisiert Remote-Branches. |
|
||||
| **Beelink** | `git checkout <name>` | Wechsle Branch. |
|
||||
| **Beelink** | `git pull` | Aktualisiere aktuellen Branch. |
|
||||
| **Beelink** | `uvicorn ... --port 8002` | Startet Test-Server (Dev). |
|
||||
|
||||
---
|
||||
|
||||
## 4. Sicherheitsregeln
|
||||
## 4. Troubleshooting
|
||||
|
||||
1. **Niemals** in `~/mindnet` (Prod-Ordner) experimentieren. Dieser Ordner bleibt immer auf `main`.
|
||||
2. **Niemals** beide Umgebungen auf denselben `COLLECTION_PREFIX` zeigen lassen.
|
||||
* Prod `.env`: `COLLECTION_PREFIX="mindnet"`
|
||||
* Dev `.env`: `COLLECTION_PREFIX="mindnet_dev"`
|
||||
3. **Port-Disziplin:**
|
||||
* **PROD:** Port 8001
|
||||
* **DEV:** Port 8002
|
||||
**"Hilfe, in meinem neuen Branch fehlen Dateien!"**
|
||||
Das passiert, wenn du beim Erstellen nicht aktuell warst.
|
||||
* **Lösung:**
|
||||
```bash
|
||||
# In VS Code Terminal:
|
||||
git checkout feature/mein-kaputter-branch
|
||||
git merge main
|
||||
# (Das holt die fehlenden Dateien aus main nach)
|
||||
Loading…
Reference in New Issue
Block a user