web-dev-qa-db-ja.com

VS Codeの「ワークスペース」とは何ですか?

私がこの質問をしているとはまったく信じられませんが、ドキュメントで定義を見つけることができませんでした。それが痛いほど明白ではない場合には、私は(非常に)VSコードに不慣れです。

たとえば、VS Codeは ユーザーレベルとワークスペースレベル の設定の適用について説明しています。

一方では、(a)あなたが開いたプロジェクトディレクトリを参照することができます。または(b)特定のウィンドウで開いたことすべてを指すこともあります。

上記のページでは、 "ワークスペース:これらの設定はワークスペース内の.vscodeフォルダに保存され、ワー​​クスペースを開いたときにのみ適用されます。"と表示されます。

228
Nat Kuhn

設定をワークスペースレベルで保存したり、ワークスペースで複数のフォルダを開くことができます。どちらかの作業をしたい場合はワークスペースを使用します。それ以外の場合はフォルダを開くだけです。

VS Codeワークスペースは、プロジェクトのフォルダとファイルのリストです。ワークスペースには複数のフォルダを含めることができます。ワークスペースの設定と設定をカスタマイズできます。

86
bonehelmet

ワークスペースは、拡張子が(.code-workspace)のテキストファイルです。あなたはそれをテキストエディタで開くことによってそれを見ることができます。私もワークスペースのアイデアと、それがどのようにVS Codeに実装されているかに不満を感じました。私は自分に合った方法を見つけました。

単一の "プロジェクト"フォルダから始めます。

VSCodeを開き、開いているワークスペース、ファイル、フォルダをすべて閉じます。エクスプローラには「OPEN EDITORS」と「NO FOLDER OPENED」だけが表示されます。メニューバーから - >ファイル - >フォルダを開く...フォルダを置きたい場所に移動し、右クリックして新しいフォルダを開きます。好きな名前を付けて、[フォルダの選択]をクリックします。 VS Code Explorerに表示されます。

メニューバー - >ファイル - >ワークスペースに名前を付けて保存...ワークスペースに名前を付けて、すべてのワークスペースを保存したい場所に保存します(必ずしもプロジェクトフォルダがある場所ではありません)。私はすべて「VS Code workspace」と呼ばれるフォルダーに全部を入れました。

これは(.code-workspace)ファイルとして保存され、ハードドライブのどこにあるかにかかわらず、そこに含まれる(またはそれを指す)すべてのファイルおよびフォルダへの単なる索引になります。あなたはそれをテキストエディタで開くことによってそれを見ることができます。作成したフォルダを閉じてVS Codeを閉じます。

それではあなたのワークスペース "file"を見つけてダブルクリックしてください。これにより、ワークスペースに作成したフォルダでVS Codeが開きます。または、VS Codeを開いて "Open Workspace"を使用することもできます。

VS Codeワークスペース内から作成したフォルダは、最初のフォルダの中にあります。最上位のフォルダを追加する場合は、最初に必要な場所にそれらを作成してから、VS Codeの "Add To Workspace .."を使用します。

60

OPのタイトルとその後の質問は次のようにまとめられているようです。

  1. VS Codeのワークスペースとは何ですか?
  2. ワークスペースsettingsはどのように動作しますか?

短い答え:

ワークスペースは、VSCodeで同時に開かれ、.code-workspaceファイルで定義されたフォルダーの仮想コレクションです。このファイルを開くと、フォルダのコレクションが自動的に開きます。これを「マルチルート」ワークスペースと呼びます。

.code-workspaceファイルは、ワークスペースが開かれているVSCodeのインスタンスによって使用されるワークスペース設定も定義します。

ワークスペースがnotで定義されている場合、つまり自分でフォルダを開く場合は、そのフォルダ構造のルートにある.vscode\settings.jsonファイルに保存される「ワークスペース設定」を作成できます。


さらに詳細に:

VSCodeは、場所によって多少曖昧にWord "workspace"を使用します。考慮すべき最初の用途は、 マルチルートワークスペース と呼ばれるものです。

マルチルートワークスペースは、VSCodeのインスタンス内でまとめて開かれる一連のフォルダ( "ルート")です。これらのフォルダが親フォルダを共有する必要はありません。 VSCodeは通常、エクスプローラのサイドバーにある単一のフォルダを使用するので、それがポイントです。

マルチルートワークスペースは、ワークスペースに含めるフォルダーのリストとVSCode設定の両方を含む.code-workspace(JSON)ファイルによって定義されます。

それらのワークスペース設定について...

ファイル>設定>設定を開くと、設定エディタが表示されます。少なくとも、 USER SETTINGS タブが表示されるはずです。これらは、ローカルコンピュータのユーザーアカウントに共通のVSCode設定です。 Windowsでは、これらは%APPDATA%\Code\User\settings.jsonに保存されています。

個々のフォルダ(多くの場合、ワークスペース内の各「ルート」フォルダ)には、独自の.vscodeファイルを含むsettings.jsonフォルダがあります。ワークスペースの一部としてではなく、個別に開いた場合、これらのsettings.jsonファイルの内容は WORKSPACE SETTINGS タブの下に表示され、そのファイルのすべての設定は実行中のVSCodeインスタンスによって使用されます。

マルチルートワークスペースを開くと、動作が異なります。まず、 ワークスペース設定 タブには、.code-workspaceファイルに設定されているオプションが表示されます。次に、settings.jsonファイルを含むフォルダはすべて、新しい FOLDER SETTINGS タブの下に表示されます。マルチルートワークスペースでは、各フォルダのsettings.jsonから限られた数の設定のみが使用されることに注意してください。さらに読むために上のリンクを開くことをお勧めします。

44
Charlie Joynt

ワークスペースとは何ですか?

1つ以上のルートフォルダーと、そのプロジェクトに属するすべてのVSCode構成で構成されるプロジェクト。これらの構成には、次のようなデータが含まれます。

ワークスペースがとても混乱するのはなぜですか?

VSCodeはUI全体で一貫してこの用語を使用しません(これに対処するために GitHubの問題 を開きました)。上記のようにワークスペースを指すこともあれば、特に.code-workspaceファイルに関連付けられているプロジェクトとしてワークスペースを指すこともあります。

最近のファイルウィジェット が良い例です。リンクされたスクリーンショットで、すべてのプロジェクトが同じ「ワークスペース」見出しの下にグループ化されていることに注意してください。これは、すべてのワークスペースがあることを示します。ただし、.code-workspaceファイルを持つプロジェクトには「Workspace」という接尾辞が付けられ、見出しと矛盾し、それらのファイルのみが実際にワークスペースであることを示します。

.code-workspaceファイルとは何ですか?

コメント付きJSON ファイル すべてを保存する 上記の構成データに加えて、

  • ワークスペースに属するすべてのルートフォルダーの場所

.code-workspaceファイルが必要ですか?

マルチルートワークスペース を作成している場合のみ。マルチルートワークスペースでは、 Explorer に表示するすべてのルートフォルダーを開く単一の.code-workspaceファイルがあります(つまり、複数のフォルダーを手動で開く必要はありません)。そして、そのワークスペースに適用するVSCode設定/構成はすべて、そのワークスペースファイルを開くたびに復元されます。

シングルフォルダープロジェクトはどうですか?

すべてが自動化されています。 VSCodeでフォルダーを開き、現在作業中のプロジェクトに特に関連するエディターの変更を開始すると、VSCodeは.vscodeフォルダーを自動的に作成し、作業中のプロジェクトフォルダーのルートに保存します。この.vscodeフォルダーには、行った変更を保存するファイルがあります。たとえば、現在のプロジェクトにのみ適用する VSCode設定の変更 の場合、VSCodeはこれらの更新を含むsettings.jsonファイルを作成し、そのファイルは.vscodeフォルダーに保存されます。

本当に必要な場合は、単一のルートフォルダーのみを含む.code-workspaceファイルを作成できます。その後、プロジェクトフォルダーを直接開くか、ワークスペースファイルを開くことができます。しかし、これが有益な理由は考えられません。

.code-workspaceファイルを作成するにはどうすればよいですか?

File > Save Workspace As...に移動します

ワークスペースにルートフォルダーを追加するにはどうすればよいですか?

File > Add Folder to Workspace...に移動します。

.code-workspaceファイルで定義されているワークスペースを開くにはどうすればよいですか?

.code-workspaceファイルをダブルクリックします。 VSCodeは実際のファイルを開きません。代わりに、そのファイルを読み取り、そのワークスペースに属するフォルダーを開きます。または、File > Open Workspace...に移動します。

実際の.code-workspaceファイルを表示するにはどうすればよいですか?

File > Open...に移動し、ターゲットの.code-workspaceファイルを選択します。または、そのファイルに関連付けられているワークスペースを開き、 コマンドパレット を開き、Workspaces: Open Workspace Configuration Fileコマンドを検索して選択します。

42
jabacchetta

ワークスペースの主なユーティリティは、プロジェクトを複雑にする複数の independent フォルダを追加できることです。例えば:

- WorkspaceProjectX  
--- ApiFolder   (maybe /usr/share/www/api)  
--- DocsFolder  (maybe /home/user/projx/html/docs)  
--- WebFolder   (maybe /usr/share/www/web)  

そのため、複数のフォルダウィンドウを開かなくても、それらを特定のプロジェクトの作業スペースにグループ化できます。

もっと学ぶことができます ここ

10
sdlins

ある調査では、答えは(a)のようです。

設定を変更するとき、設定ファイルはプロジェクトディレクトリの.vscodeディレクトリに入ります。

9
Nat Kuhn

Visual Studio Code v1.25.1をインストールしました。 Windows 7 Professional SP1マシン上。ワークスペースを詳細に理解したかったので、数時間かけてどのように機能するかを考えましたこのバージョンのVS Codeで私は自分の研究の結果がコミュニティにとって興味があると思いました。

まず、MicrosoftはVS Codeドキュメントでワークスペースを「マルチルートワークスペース」と呼んでいます。平易な英語では、「マルチフォルダー(A.K.A "root")作業環境」を意味します。 VS Codeワークスペースは、単なるフォルダーのコレクションであり、任意の順序で任意のコレクションを望みます。フォルダの典型的なコレクションは、ソフトウェア開発プロジェクトを構成します。ただし、フォルダコレクションは、ソフトウェアコードが開発されている他のあらゆるものに使用できます。

VS Codeがワークスペースを処理する方法の背後にある仕組みは少し複雑です。私が学んだことを伝える最も簡単な方法は、コンピューターでワークスペースがどのように機能するかを見るために使用できる一連の指示を与えることだと思います。 VS Code v1.25.1。の新規インストールから始めることを前提としています。VSCodeの製品版を使用している場合は、一部の指示を失う可能性があるため、指示に従うことはお勧めしませんOR既存のVSコード設定のすべて! VSコードv1.25.1のテストバージョンが既にインストールされている場合、そして、すでに存在する設定を失ってもかまいません VSコードを新規インストール状態に戻すには、次の手順を実行する必要があります。

次のフォルダーを削除します(存在する場合):

  C:\Users\%username%\AppData\Roaming\Code\Workspaces (where "%username%" is the name of the currently logged-on user)

VS Codeにフォルダーを追加して、新しいワークスペースを作成します。この新しいワークスペースの作成に使用するフォルダーのいずれかが以前VS Codeで使用されていた場合、新しいワークスペースの作成に使用される各フォルダー内の「.vscode」サブフォルダー(存在する場合)を削除してください。

VS Codeを起動します。 「ようこそ」ページが表示されたら、閉じます。パネル(水平ペイン)が表示されている場合は、同じ操作を行います。 Gitがインストールされていないというメッセージを受け取った場合は、「後で通知する」をクリックします。表示された場合は、デフォルトコードページとして起動された「無題」コードページも閉じます。エクスプローラーペインが表示されない場合は、メインメニューの[表示]をクリックし、[エクスプローラー]をクリックしてエクスプローラーペインを表示します。 [Explorer]ペイン内には、[エディタを開く]、[フォルダを開いていない]、および[エクスプローラ]ペインの一番下にあるアウトラインの3つのビューヘッダーが表示されます。 AT最小、開いているエディター、フォルダーが開いていないことを確認してください。ビューヘッダーが表示されます。

VS Codeは、「フォルダを開く」というボタンを表示します。このボタンをクリックして、選択したフォルダーを選択します。 VS Codeが更新され、選択したフォルダの名前が「フォルダを開いていません」ビュー名に置き換わります。選択したフォルダー内に存在するフォルダーとファイルはすべて、ビュー名の下に表示されます。

VS Code Preferences Settingsファイルを開きます。これを行うには多くの方法があります。覚えやすい最も簡単なファイル、[ファイル]> [設定]> [設定]を使用します。設定ファイルは2列に表示されます。左の列は、すべてのVSコード機能のデフォルト値の読み取り専用リストです。右側の列は、3種類のユーザー設定をリストするために使用されます。テストのこの時点では、ユーザー設定とワークスペース設定の2つのユーザー設定のみがリストされます。デフォルトでは、ユーザー設定が表示されます。これにより、ユーザー設定.jsonファイルの内容が表示されます。このファイルの場所を確認するには、エクスプローラーで[エディターを開く]ビューの下に表示される[ユーザー設定]リストにマウスを合わせます。 OPEN EDITORSビューのこのリストは、右側の列の「ユーザー設定」オプションが選択されると自動的に選択されます。パスは次のとおりです。

C:\Users\%username%\AppData\Roaming\Code\User\settings.json

このsettings.jsonファイルには、VSコードのユーザー設定が保存されます。

次に、Preferencesリストの右側の列にあるWorkspace Settingsオプションをクリックします。これを行うと、「。vscode」という名前のサブフォルダーが、数ステップ前にExploreに追加したフォルダーに自動的に作成されます。エクスプローラーでフォルダーのリストを見て、.vscodeサブフォルダーが追加されたことを確認します。新しい.vscodeサブフォルダー内には、別のsettings.jsonファイルがあります。このファイルには、数ステップ前にエクスプローラーに追加したフォルダーのワークスペース設定が含まれています。

この時点で、single folderがあり、そのユーザー設定は次の場所に保存されています:

C:\Users\%username%\AppData\Roaming\Code\User\settings.json

ワークスペース設定は次の場所に保存されます。

C:\TheLocationOfYourFolder\settings.json

これは、VS Codeの新規インストールに単一のフォルダーが追加されたときの構成です。 2つ目(またはそれ以上)のフォルダーを追加すると、事態は面倒になります。これは、VS Codeのユーザー設定とワークスペース設定を変更して、複数のフォルダーに対応しているためです。単一フォルダー環境では、上記のように2つのsettings.jsonファイルのみが必要です。 ただし、マルチフォルダー環境では、エクスプローラーに追加された各フォルダーに.vscodeサブフォルダーが作成され、マルチフォルダー環境を管理するために新しいファイル "workspaces.json"が作成されます。新しい " workspaces.json」ファイルは次の場所に作成されます。

c:\Users\%username%\AppData\Roaming\Code\Workspaces\%workspace_id%\workspaces.json

「%workspaces_id%」は、一意のすべて番号の名前を持つフォルダーです。

[設定]の右側の列に、ユーザー設定、ワークスペース設定、フォルダー設定の3つのユーザー設定オプションが表示されます。ユーザー設定の機能は、単一フォルダー環境の場合と同じです。ただし、ワークスペース設定の背後にある設定ファイルは、単一フォルダーの.vscodeサブフォルダーにあるsettings.jsonファイルから、上記のworkspaces.jsonファイルパスにあるworkspaces.jsonファイルに変更されています。 各フォルダーの.vscodeサブフォルダーにあるsettings.jsonファイルは、3番目のユーザー設定であるフォルダーオプションによって制御されるようになりました。これは、各フォルダーのsettings.jsonの管理を可能にするドロップダウン選択リストです。各フォルダーの.vscodeサブフォルダーにあるファイル。注:.vscodeサブフォルダーは、新しく追加されたフォルダーがATフォルダーオプションユーザー設定で少なくとも一度選択されるまで、新しく追加されたエクスプローラーフォルダーには作成されません。

エクスプローラーの単一フォルダー名が「UNTITLED(WORKSPACE)」に変更されていることに注意してください。これは次のことを示しています。

  1. 「UNTITLED(WORKSPACE)」という名前のマルチフォルダーワークスペースが作成されました
  2. ワークスペースは「UNTITLED(WORKSPACE)」という名前になりますワークスペースが別の一意のワークスペースファイルとしてまだ保存されていないことを伝えるため
  3. UNTITLED(WORKSPACE)ワークスペースには、フォルダーを追加および削除できますただし、VS Codeの唯一のワークスペース環境として機能します

VS Codeワークスペースのすべての機能は、ワークスペースがファイルとして保存され、必要に応じて再ロードできる場合にのみ実現されます。これにより、一意のマルチフォルダーワークスペース(プロジェクトなど)を作成し、後で使用するためにファイルとして保存することができます!これを行うには、メインメニューから[ファイル]> [ワークスペースに名前を付けて保存]を選択し、現在のワークスペース構成を一意のワークスペースファイルとして保存します。ワークスペースを「最初から」作成する必要がある場合は、最初に現在のワークスペース構成を保存し(必要な場合)、各Explorerフォルダー名を右クリックして、「ワークスペースからフォルダーを削除」をクリックします。すべてのフォルダーがワークスペースから削除されたら、新しいワークスペースに必要なフォルダーを追加します。新しいフォルダーの追加が完了したら、新しいワークスペースを新しいワークスペースファイルとして保存します。

重要な注意-エクスプローラーに1つのフォルダーのみが残っている場合、または新しいワークスペースを「最初から」作成するときにすべてのフォルダーがエクスプローラーから削除された場合、VS Codeは単一フォルダーモードに「戻りません」 3つのユーザー設定を使用するマルチフォルダーワークスペース構成は引き続き有効です。つまり、この投稿の冒頭の指示に従わない限り、VS Codeを単一フォルダーモードの操作に戻すことはできません。常に、マルチフォルダーワークスペースモードのままになります。

7
Bill Vallance

彼らはそれを マルチルートワークスペース と呼びます、それであなたは簡単にデバッグをすることができますb/c

「マルチルートワークスペースの場合、VS Codeはすべてのフォルダでlaunch.jsonデバッグ設定ファイルを検索し、サフィックスとしてフォルダ名を付けて表示します。」

アプリケーションフォルダ内にサーバとクライアントフォルダがあり、それらを一緒にデバッグする場合は、ワークスペースなしで、2つのvscode、サーバ用、クライアント用を起動し、前後に切り替える必要があるとします。

しかし今のところ(1.24)、ワークスペースのみのフォルダに単一のファイルを追加することはできません。これは少し不便です 不便です

2
Qiulang

2018年5月の時点で、VS Codeのワークスペースを使用すると、異なるが関連しているプロジェクトにすばやくアクセスできるようになります。別のフォルダを開く必要なしにすべて。そして、あなたは複数のワークスペースも持つことができます。ここに参照を見ればそれの全体像を得る:
参考文献1
参考文献2

1
jet2016

Visual Studioコードが新規インストールの場合

  1. 拡張機能をクリックし、 "python"を検索してインストールをクリック

  2. ビューをクリック - >エクスプローラフォルダがワークスペースに追加されていない場合([ファイル] - > [フォルダをワークスペースに追加])

  3. 仮想Python環境を使用したい場合は、ファイル - >設定 - >設定をクリックしてください。

ウィンドウの右上隅にある「{} open settings JSON」をクリックしてから、仮想環境にあるpython.exeファイルへのパスを追加します。

{
    "python.pythonPath": "C:\\PathTo\\VirtualENV\\python.exe"
}
  1. 新しい端末を起動して、正しいPythonインタプリタが選択されていることを確認してください。
0
Klllmmm

質問は「ワークスペースとは何ですか?」と尋ねていますが、混乱の原因は、ワークスペースが他のエディターの「プロジェクト」のように振る舞うことを期待していると感じています。

したがって、この混乱のためにここに着陸するすべての人々を支援するために、VS Code(私のものではない)用の次のプラグイン「プロジェクトマネージャー」を投稿したいと思いました。 https://marketplace.visualstudio.com/items ?itemName = alefragnani.project-manager

単一フォルダープロジェクトを管理(保存および開く)するための素晴らしいUIがあります。

プロジェクトの保存:

enter image description here

パレットでプロジェクトを開く:

enter image description here

ステータスバーで現在のプロジェクトを見る(クリックしてプロジェクトパレットを開く):

enter image description here

サイドバーのプロジェクトにアクセスします。

enter image description here

0
trusktr