Was ist ein VS Code Workspace?
Ein Visual Studio Code Workspace ist die Sammlung von einem oder mehreren Ordnern, die in einem VS Code-Fenster (Instanz) geöffnet sind. In den meisten Fällen haben Sie einen einzelnen Ordner als Workspace geöffnet. Abhängig von Ihrem Entwicklungs-Workflow können Sie jedoch auch mehr als einen Ordner einbeziehen, indem Sie eine erweiterte Konfiguration namens Multi-Root-Workspaces verwenden.
Das Konzept eines Workspaces ermöglicht es VS Code,
- Einstellungen zu konfigurieren, die nur für einen bestimmten Ordner oder bestimmte Ordner gelten, aber nicht für andere.
- Aufgaben- und Debugger-Startkonfigurationen zu speichern, die nur im Kontext dieses Workspaces gültig sind.
- UI-Zustände zu speichern und wiederherzustellen, die diesem Workspace zugeordnet sind (z. B. die geöffneten Dateien).
- Erweiterungen selektiv nur für diesen Workspace zu aktivieren oder zu deaktivieren.
Sie werden möglicherweise die Begriffe "Ordner" und "Workspace" in der VS Code-Dokumentation, in Issues und in Community-Diskussionen austauschbar verwendet sehen. Betrachten Sie einen Workspace als die Wurzel eines Projekts, das zusätzliche VS Code-Kenntnisse und -Funktionen besitzt.
Hinweis: Es ist auch möglich, VS Code ohne Workspace zu öffnen. Wenn Sie beispielsweise ein neues VS Code-Fenster öffnen, indem Sie eine Datei über das Menü Datei Ihrer Plattform auswählen, befinden Sie sich nicht in einem Workspace. In diesem Modus sind einige Funktionen von VS Code eingeschränkt, aber Sie können immer noch Textdateien öffnen und bearbeiten.
Wie öffne ich einen VS Code "Workspace"?
Sie können einen Workspace öffnen, indem Sie das Menü Datei > Ordner öffnen... verwenden und dann einen Ordner auswählen.
Alternativ, wenn Sie VS Code von einem Terminal aus starten, können Sie den Pfad zu einem Ordner als erstes Argument für den Befehl code zum Öffnen übergeben. Verwenden Sie beispielsweise den folgenden Befehl, um den aktuellen Ordner (.) mit VS Code zu öffnen
code .
Single-Folder-Workspaces
Sie müssen nichts tun, damit ein Ordner zu einem VS Code Workspace wird, außer den Ordner mit VS Code zu öffnen. Sobald Sie einen Ordner öffnen, verfolgt VS Code automatisch Konfigurationen wie Ihre geöffneten Dateien oder das Editor-Layout. Wenn Sie diesen Ordner erneut in VS Code öffnen, ist der Editor so, wie Sie ihn zuvor verlassen haben.
Sie können auch andere ordnerspezifische Konfigurationen hinzufügen, wie z. B. workspace-spezifische Einstellungen (im Gegensatz zu globalen Benutzereinstellungen), Aufgabendefinitionen und Debugger-Startdateien (siehe unten im Abschnitt Workspace-Einstellungen).

Ein Single-Folder-Workspace, der in VS Code geöffnet ist
Multi-Root-Workspaces
Multi-Root-Workspaces sind eine erweiterte Funktion von VS Code, die es Ihnen ermöglicht, mehrere verschiedene Ordner als Teil desselben Workspaces zu konfigurieren. Anstatt einen Ordner als Workspace zu öffnen, öffnen Sie eine <Name>.code-workspace JSON-Datei, die alle Ordner des Workspaces auflistet. Zum Beispiel
{
"folders": [
{
"path": "my-folder-a"
},
{
"path": "my-folder-b"
}
]
}

Ein Multi-Root-Workspace, der in VS Code geöffnet ist
Hinweis: Der visuelle Unterschied zwischen dem Öffnen eines Ordners und dem Öffnen einer
.code-workspace-Datei kann subtil sein. Um Ihnen einen Hinweis darauf zu geben, dass eine.code-workspace-Datei geöffnet wurde, zeigen einige Bereiche der Benutzeroberfläche (z. B. die Wurzel des Datei-Explorers) einen zusätzlichen (Workspace)-Suffix neben dem Namen an.
Nicht benannte Multi-Root-Workspaces
Sie können Ordner in Ihrem Workspace flexibel hinzufügen oder entfernen. Beginnen Sie mit dem Öffnen eines Ordners in VS Code und fügen Sie später weitere Ordner hinzu, wie Sie es für richtig halten.

Kontextmenü des Datei-Explorers zum Hinzufügen oder Entfernen eines Ordners in einem Workspace
Sofern Sie nicht bereits eine .code-workspace-Datei geöffnet haben, erstellt VS Code beim ersten Hinzufügen eines zweiten Ordners zu einem Workspace automatisch einen *nicht benannten* Workspace. Im Hintergrund pflegt VS Code automatisch eine Datei untitled.code-workspace für Sie, die alle Ordner und Workspace-Einstellungen Ihrer aktuellen Sitzung enthält. Der Workspace bleibt *nicht benannt*, bis Sie ihn auf der Festplatte speichern.

Ein nicht benannter Multi-Root-Workspace, der in VS Code geöffnet ist
Hinweis: Es gibt keinen Unterschied zwischen einem nicht benannten Workspace und einem gespeicherten Workspace, abgesehen davon, dass ein nicht benannter Workspace automatisch für Sie zur Bequemlichkeit erstellt wird und immer wiederhergestellt wird, bis Sie ihn speichern. VS Code löscht nicht benannte Workspaces automatisch (nachdem es Sie um Bestätigung gebeten hat), wenn Sie ein Fenster schließen, in dem ein nicht benannter Workspace geöffnet ist.
Arbeitsbereichseinstellungen
Workspace-Einstellungen ermöglichen es Ihnen, Einstellungen im Kontext des geöffneten Workspaces zu konfigurieren. Workspace-Einstellungen überschreiben immer die globalen Benutzereinstellungen. Sie werden physisch in einer JSON-Datei gespeichert, und ihr Speicherort hängt davon ab, ob Sie einen Ordner als Workspace geöffnet haben oder ob Sie eine .code-workspace-Datei geöffnet haben.
Informationen zu den Geltungsbereichen von Einstellungen und deren Speicherorten finden Sie in der Dokumentation zu den Einstellungen.
Single-Folder-Workspace-Einstellungen
Workspace-Einstellungen werden in .vscode/settings.json gespeichert, wenn Sie einen Ordner als Workspace öffnen.

Der Einstellungen-Editor, wenn ein Ordner als Workspace geöffnet ist
Multi-Root-Workspace-Einstellungen
Wenn Sie eine .code-workspace-Datei als Workspace öffnen, werden alle Workspace-Einstellungen in die .code-workspace-Datei aufgenommen.
Sie können immer noch Einstellungen pro Stammordner konfigurieren, und der Einstellungen-Editor zeigt einen dritten Geltungsbereich für Einstellungen namens Ordner-Einstellungen an.

Der Einstellungen-Editor, wenn ein Multi-Root-Workspace geöffnet ist
Einstellungen, die pro Ordner konfiguriert sind, überschreiben Einstellungen, die in der .code-workspace-Datei definiert sind.
Workspace-Aufgaben und Startkonfigurationen
Ähnlich wie Workspace-Einstellungen spezifisch für einen Workspace sind, können auch Aufgaben und Startkonfigurationen auf einen Workspace beschränkt sein.
Abhängig davon, ob Sie einen Ordner als Workspace geöffnet haben oder eine .code-workspace-Datei, befindet sich der Speicherort von Workspace-Aufgaben und Startkonfigurationen entweder innerhalb des .vscode-Ordners oder innerhalb der .code-workspace-Datei. Darüber hinaus können Aufgaben und Startkonfigurationen immer auf der Ebene eines Ordners definiert werden, auch wenn Sie eine .code-workspace-Datei geöffnet haben.
Weitere Informationen zur Verwendung von Aufgaben und Startkonfigurationen in VS Code finden Sie in den Kapiteln zu Aufgaben und Debugging.
Häufig gestellte Fragen
Was ist der Vorteil eines Multi-Root-Workspaces gegenüber einem einzelnen Ordner?
Der offensichtlichste Vorteil ist, dass ein Multi-Root-Workspace es Ihnen ermöglicht, mit mehreren Projekten zu arbeiten, die möglicherweise nicht im selben übergeordneten Ordner auf der Festplatte gespeichert sind. Sie können Ordner von überall auswählen, um sie dem Workspace hinzuzufügen.
Selbst wenn Sie hauptsächlich an einem einzelnen Ordner-basierten Projekt arbeiten, können Sie von der Verwendung von .code-workspace-Dateien profitieren. Sie können mehrere .code-workspace-Dateien innerhalb des Ordners speichern, um eine bereichsbezogene Ordneransicht bestimmter Aspekte des Projekts je nach Szenario bereitzustellen (z. B. client.code-workspace, server.code-workspace, um nicht verwandte Ordner aus dem Datei-Explorer auszublenden). Da .code-workspace-Dateien relative Pfade für den Abschnitt folders unterstützen, funktionieren diese Workspace-Dateien für jeden, unabhängig davon, wo der Ordner gespeichert ist.
Schließlich, wenn Sie für einige Projekte die gleichen Workspace-Einstellungen oder Aufgaben/Startkonfigurationen anwenden möchten, sollten Sie diese in eine .code-workspace-Datei aufnehmen und diese Ordner von diesem Workspace hinzufügen oder entfernen.
Warum stellt VS Code bei einem Neustart alle nicht benannten Workspaces wieder her?
Nicht benannte Workspaces sind so konzipiert, dass Sie explizit entscheiden müssen, ob Sie sie behalten möchten oder nicht. Wenn zum ersten Mal ein nicht benannter Workspace erstellt wird, fügt VS Code die angegebenen Ordner in die Workspace-Datei ein und fügt auch alle vorhandenen Workspace-Einstellungen hinzu. Diese Benutzerdaten werden immer wiederhergestellt und in einem VS Code-Fenster angezeigt, bis der nicht benannte Workspace gespeichert oder gelöscht wird.
Wie lösche ich einen nicht benannten Workspace?
Sie können einen nicht benannten Workspace löschen, indem Sie sein Fenster schließen und die Aufforderung zum Speichern des nicht benannten Workspaces ablehnen.
Kann ich einen Multi-Root-Workspace ohne Ordner verwenden?
Es ist möglich, den Abschnitt folders einer .code-workspace-Datei leer zu lassen, so dass Sie eine VS Code-Instanz erhalten, die keine Stammordner anzeigt. Sie können in diesem Fall weiterhin Workspace-Einstellungen und sogar Aufgaben oder Startkonfigurationen speichern.
Unterstützt VS Code Projekte oder Lösungen?
VS Code hat nicht das Konzept eines "Projekts" oder einer "Lösung", wie sie manchmal in anderen Entwicklungswerkzeugen wie der Visual Studio IDE definiert werden. Sie werden möglicherweise den Begriff "Projekt" in der VS Code-Dokumentation sehen, aber er bedeutet normalerweise "das, woran Sie gerade arbeiten". Abhängig von Ihrer Programmiersprache oder Ihrem Framework kann das Toolset selbst etwas unterstützen, das als "Projekt" bezeichnet wird, um Build-Konfigurationen zu definieren oder enthaltene Dateien aufzulisten.