Visual Studio Code でコラボレーション セッションでの共同デバッグを行う

Visual Studio Live Share の共同デバッグ機能は、問題をデバッグするための強力な手段です。 これにより、コラボレーション エクスペリエンスで問題をトラブルシューティングできるようになります。 また、ユーザー本人やセッションの他の参加者は、ホストのコンピューターで共有デバッグ セッションを提供することにより、環境固有の問題を調査することもできます。

ヒント

参加者は個別にファイルに移動して編集できるため、ホストは、.vsls.json ファイルを使用して、ゲストがプロジェクト内でアクセスできるファイルを制限できます。 また、コンソールおよび REPL アクセスを使用すると、参加者はホストのコンピューターでコマンドを実行できるため、信頼できるユーザーとのみ共同デバッグを行う必要があります。 ゲストは、制限の厳しい設定により、特定の制限されたファイルにステップインしたデバッガーをフォローできない場合があるということを、認識しておく必要があります。 詳細については、「ファイル アクセスと可視性の制御」を参照してください。

共同デバッグの使用は簡単です。

  1. ホストとすべてのゲストに適切なデバッグ拡張機能がインストールされていることを確認します。 インストールは必ずしも必要ではありませんが、一般的にお勧めします。

  2. ホストがまだプロジェクトの設定を行っていない場合は、通常どおりに Visual Studio Code からアプリケーションをデバッグするように launch.json を構成する必要があります。 特別な設定は必要ありません。

  3. ホストは、通常どおり、デバッグ タブのボタンを使用してデバッグを開始できます。

    Screenshot that shows the Visual Studio Code debug button.

    ヒント

    また、Visual Studio Code から Visual Studio のデバッグ セッションに、またはその逆に、参加することもできます。 詳細については、共同デバッグに関する Visual Studio の手順のページを参照してください。

デバッガーがホスト側でアタッチされると、すべてのゲストも自動的にアタッチされます。 デバッグ セッションはホストのコンピューター上で実行される 1 つだけであり、すべての参加者はそれに接続されて、独自のビューが表示されます。

Screenshot that shows the Visual Studio Code debugger.

すべてのユーザーがデバッグ プロセスをステップ実行できるため、制御をネゴシエートすることなく、コラボレーターを切り替えることができます。

Note

言語またはプラットフォームによるデバッグ機能のサポートについては、プラットフォームのサポートに関する記事を参照してください。

各コラボレーターは、変数を調査し、呼び出し履歴内のさまざまなファイルに移動し、変数を検査し、ブレークポイントを追加または削除できます。 共同編集機能を使用すると、各参加者は、他の参加者がいる場所を追跡できるので、問題の側面の同時調査と共同デバッグの間を、切り替えることができます。

Note

読み取り専用のコラボレーション セッションでは、ゲストはデバッグ プロセスをステップ実行できません。 ブレークポイントを追加または削除したり、変数を検査したりすることはできます。

Animation that shows concurrent debugging.

Visual Studio Code がデバッグ セッションに参加するタイミングを変更する

既定では、ゲストはホストによって共有されると自動的にデバッグ セッションにアタッチされます。 この動作は問題になる場合があります。

この動作を変更するには、左下隅の [ヘルプ] メニューを開き、[Configure Settings]\(設定の構成\) を選択します。

Screenshot that shows the Live Share help menu with Configure Settings selected.

[Live Share: Join Debug Session Option]\(Live Share: デバッグ セッション参加オプション\) まで下へスクロールし、次のオプションのいずれかを選択します。

設定 動作
自動 これが既定値です。 ゲストは、ホストが開始するすべての共有デバッグ セッションに自動的に参加します。
Prompt ホストが共有デバッグ セッションを開始すると、ゲストはそれに参加するように求められます。
手動 ゲストは、デバッグ セッションに手動で参加する必要があります。 「デタッチと再アタッチ」を参照してください。

デタッチと再アタッチ

ゲストは、一時的にデバッグを停止したいことがあります。 デバッグ ツール バーの [停止] ボタンを選択することで、ホストまたは他のゲストに影響を与えずに、デバッガーをデタッチできます。

Screenshot that shows the Stop button.

設定を更新して自動的にアタッチされなくなっている場合や、後で再アタッチする場合は、Ctrl + Shift + P または Cmd + Shift + P キーを押すか、セッション状態ステータス バー項目を選択してから、[Attach to a Shared Debugging Session]\(共有デバッグ セッションへのアタッチ\) を選択することで、それを行うことができます。

Screenshot that shows the Attach to a Shared Debugging Session command.

ブラウザーで実行中のアプリケーションを共有する

Visual Studio とは異なり、Visual Studio Code では、ASP.NET などのプロジェクトの種類用の既知の Web アプリケーション ポートはサポートされていません。 ただし、Visual Studio ホストからコラボレーション セッションに参加している場合は、デバッグが開始すると、既定のブラウザーが自動的に表示されることがあります。 その後、ブラウザーはホストの実行中のアプリケーションに自動的に接続されます。 詳細については、Visual Studio の機能に関する記事を参照してください。

ホストは、ローカル サーバー共有機能を使用して、RESTful サービスなどのアプリケーションまたは他のエンドポイントを手動で共有することで、同様のことを実現できます。 Visual Studio と Visual Studio Code のゲストは同じ localhost ポートでブラウザーを開き、実行中のアプリケーションを表示することができます。 詳細については、サーバーの共有に関するセクションを参照してください。

次のステップ