Deployen, Log ansehen, Dienst schalten und fragen was laeuft waren vier verschiedene Beschwoerungen, drei davon von Hand als ssh + systemctl. Jetzt: remote backend deploy|upload|setup|install-jdk|reset-password remote backend start|stop|restart|status|enable|disable remote backend log|info|documents|backup remote frontend deploy|preview|info remote ssh Die Skripte unter scripts/ bleiben die Implementierung und einzeln aufrufbar; tools/remote bringt nur mit, wofuer es bisher nichts gab. Wo ein Schalter noetig war, kam er ins Skript statt ins Werkzeug: --unit-only in deploy-backend.sh (sonst kennte eine zweite Stelle die Unit-Platzhalter) und --dry-run in deploy-prod.sh, das die Befoerderung ausdruecklich mit abschaltet. Neu ist die Sicherung: H2 haelt die Datei offen, also anhalten, holen, wieder starten (gemessen ~8 s Auszeit) - und das Archiv lesen, bevor der Befehl es behaelt. Gegenprobe von Hand: lokal ausgepackt, Backend mit --werkbaum.data-dir dagegen gestartet, es liefert genau die Dokumente des Servers. .envrc legt tools/ auf den PATH (direnv), 217 Plan-Knoten, 0 Warnungen.
80 lines
1.7 KiB
Plaintext
80 lines
1.7 KiB
Plaintext
# === Betriebssystem ===
|
|
.DS_Store
|
|
Thumbs.db
|
|
Desktop.ini
|
|
|
|
# === IntelliJ IDEA / JetBrains (D13) ===
|
|
# Projektdateien lokal halten; geteilte Einstellungen ggf. gezielt wieder einchecken.
|
|
.idea/
|
|
*.iml
|
|
*.ipr
|
|
*.iws
|
|
out/
|
|
|
|
# === Claude Code ===
|
|
# launch.json wird für die Preview automatisch neu erzeugt; lokale Overrides
|
|
# ebenso lokal halten. Geteilte Konfig (settings.json, commands/…) darf rein.
|
|
.claude/launch.json
|
|
.claude/settings.local.json
|
|
|
|
# === Editoren ===
|
|
.vscode/
|
|
*.swp
|
|
*~
|
|
|
|
# === Backend: Gradle / Kotlin / JVM (D13) ===
|
|
backend/.gradle/
|
|
backend/build/
|
|
backend/**/build/
|
|
!backend/**/src/**/build/
|
|
.gradle/
|
|
build/
|
|
!src/**/build/
|
|
# Gradle-Wrapper einchecken, aber lokale Overrides ignorieren
|
|
!gradle/wrapper/gradle-wrapper.jar
|
|
!gradle/wrapper/gradle-wrapper.properties
|
|
gradle-app.setting
|
|
|
|
# Spring Boot / lokale Laufzeit
|
|
*.log
|
|
logs/
|
|
application-local.properties
|
|
application-local.yml
|
|
application-local.yaml
|
|
|
|
# === Java-Artefakte ===
|
|
*.class
|
|
*.jar
|
|
*.war
|
|
*.ear
|
|
hs_err_pid*
|
|
replay_pid*
|
|
!gradle-wrapper.jar
|
|
/backend/gradle/wrapper/
|
|
/backend/gradlew
|
|
/backend/gradlew.bat
|
|
|
|
# === Frontend (Vanilla HTML/CSS/JS, D11) ===
|
|
# Derzeit build-frei; falls später Tooling dazukommt:
|
|
frontend/node_modules/
|
|
frontend/dist/
|
|
# Auch in der Wurzel: `npx vitest` legt dort seinen Ergebnis-Cache ab
|
|
# (node_modules/.vite/…/results.json) — er war versehentlich eingecheckt und
|
|
# änderte sich bei jedem Testlauf.
|
|
node_modules/
|
|
|
|
# === Geheimnisse / lokale Umgebung ===
|
|
# .env hält u. a. DEPLOY_TARGET für scripts/deploy-prod.sh (Vorlage: .env.example)
|
|
.env
|
|
.env.local
|
|
*.local
|
|
|
|
# Datenbank-Sicherungen vom Server (`remote backend backup`). Sie enthalten
|
|
# fremde Pläne — sie gehören nie ins Repository, auch nicht versehentlich.
|
|
backups/
|
|
|
|
# === Temporäres ===
|
|
tmp/
|
|
*.tmp
|
|
*.bak
|