DokumentationImport & Handoff

Import & Handoff

Dwell begleitet vorhandenen Code in die lokale Entwicklung. Wähle den passenden Ablauf: ein bestehendes Projekt importieren, einen Dwell-Clone vorbereiten oder einen verschobenen Ordner neu registrieren.

Welcher Workflow passt?

Arbeite jeweils im Projektwurzelverzeichnis. Import ist für Code ohne Dwell-Konfiguration gedacht; Handoff für ein bereits eingerichtetes Dwell-Projekt auf deinem Rechner.

  • Import analysiert vorhandene Anwendungen und schlägt eine Dwell-Konfiguration vor.
  • Handoff zeigt lokale Voraussetzungen und Blocker; es erstellt kein Übergabepaket.
  • Reinit repariert die Zuordnung eines Dwell-Projekts nach einem physischen Umzug oder einer Umbenennung.

Bestehenden Code importieren

Sichere deine Arbeit im Repository. Analysiere zuerst ohne Änderungen und prüfe das Proposal: erkannte Rollen, Verzeichnisse, Versionen, PHP sowie Warnungen und offene Fragen.

Import ohne Änderungen analysierenbash
dwell import --json

dwell import zeigt die Vorschau erneut und fragt im interaktiven Terminal vor dem Schreiben nach Bestätigung. Übernimm sie erst, wenn sie zu deinem Projekt passt. Bei unklarer Erkennung helfen explizite Rollen- und Verzeichnisangaben; die vollständigen Optionen stehen in der Command-Referenz.

Proposal prüfen und bestätigenbash
dwell import

Managed-Erkennung
Dwell erkennt Symfony, Laravel, Shopware 6, TYPO3 und WordPress sowie React/Vite und Vue/Vite. Es bevorzugt Versionsinformationen aus Lockfiles. Eine erkannte Managed-Rolle braucht eine unterstützte Versionslinie; ein nicht unterstütztes Framework wird nicht still aktualisiert.
Custom-Fallback
Andere PHP- oder JavaScript-Anwendungen können als Custom-Rolle vorgeschlagen werden. Prüfe beim PHP-Backend den Webroot und beim Frontend den Start-Command. Du verantwortest Anwendung, Abhängigkeiten und Kompatibilität; Dwell übernimmt die lokale Runtime im Custom-Vertrag.

Import legt Dwell-Konfiguration und lokalen Zustand um den vorhandenen Code an. Es verschiebt keine Quelldateien, übernimmt keine fremde Docker-, Compose- oder Routing-Infrastruktur und installiert selbst keine Anwendungsabhängigkeiten. Danach prüfst du Handoff, behebst Blocker und startest:

Importiertes Projekt vorbereiten und startenbash
dwell handoff
dwell build
dwell up

Ein Projekt weitergeben

Gib Quellcode, .dwell/dwell.json und die Dependency-Lockfiles über dein Repository weiter. Lokale Secrets, Runtime-Dateien und Datenbanken gehören nicht in Git. Benötigte Anwendungsdaten überträgst du als separate Sicherung über einen geeigneten sicheren Weg.

  1. Auf dem neuen Rechner das Repository klonen und ins Projektwurzelverzeichnis wechseln.
  2. Node.js, npm und Docker mit Linux-Containern bereitstellen; einzelne Frontends können eine höhere Node-Version verlangen.
  3. dwell handoff ausführen und die gemeldeten Blocker mit ihren nächsten Schritten bearbeiten.
  4. Lokale Environment-Werte und Secrets ergänzen, dann dwell build und dwell up ausführen.
Lokale Bereitschaft prüfenbash
dwell handoff

Handoff prüft unter anderem Konfiguration, Stack-Versionen, Rollenverzeichnisse, lokale Tools, Docker-Erreichbarkeit und bekannte Hostkonflikte. Für .env.example oder .env.dist prüft es deklarierte Schlüssel in .env oder .env.local; vorhandene Werte sind damit noch nicht fachlich validiert. Es kopiert keine Secrets, Container oder VMs und garantiert keinen erfolgreichen Anwendungsstart.

Projektordner verschoben?

Hast du den ganzen Projektordner im Dateisystem verschoben oder umbenannt, wechsle an den neuen Ort und führe reinit aus. Nimm die .dwell-Konfiguration und den persistenten lokalen Zustand mit.

Metadaten am neuen Ort reparierenbash
dwell reinit

Reinit aktualisiert Registry und Runtime-Zuordnung. Es verschiebt selbst keine Dateien und behält den konfigurierten Slug standardmäßig bei. Ordnername, Anzeigename und Hostbasis ändern sich dadurch nicht automatisch gemeinsam. Ein zweiter vorhandener Clone mit derselben Projektidentität kann eine Kollision auslösen; reinit ist kein Kopierworkflow.

Hinweise & Grenzen

Ein bestehendes Dwell-Projekt wird nicht nochmals importiert. Verschachtelte Rollenpfade wie apps/web werden nicht unterstützt; eine einzelne Anwendung kann am Repository-Root bleiben. Nutze import --yes nur bei eindeutigem Proposal: Warnungen und offene Fragen blockieren die automatische Übernahme. Für Custom-Frontends braucht up einen gültigen Start-Command. Prüfe Secrets und Anwendungsdaten separat vom Repository.

Als Nächstes

Der Projekte-Guide erklärt den täglichen Start und Stopp. Für Custom-Verantwortung und kompatible Versionen nutze den Stack-Guide.

Technische Referenz