ソース管理プラグインを実装してアタッチすることで、Visual Studio 統合開発環境 (IDE) にソース管理のサポートを追加できます。 IDE は、適切に定義されたソース管理 Plug-In API を使用してソース管理プラグインに接続します。 IDE は、ツール バーとメニュー コマンドで構成されるユーザー インターフェイス (UI) を提供することで、ソース管理システムのバージョン管理機能を公開します。 ソース管理プラグインは、ソース管理機能を実装します。
ソース管理プラグイン リソース
ソース管理プラグインには、バージョン管理アプリケーションを作成して Visual Studio IDE に接続するのに役立つリソースが用意されています。 ソース管理プラグインには、Visual Studio IDE に統合できるように、ソース管理プラグインによって実装される必要がある API 仕様が含まれています。 また、ソース管理プラグイン API に準拠した重要な関数の実装を示すスケルトン ソース管理プラグインを実装するコード サンプル (C++ で記述) も含まれています。
ソース管理プラグイン API 仕様では、ソース管理プラグイン API に従って実装された必要な関数セットを使用してソース管理 DLL を作成する場合に、任意のソース管理システムを利用できます。
Components
図のソース管理アダプター パッケージは、ソース管理操作に対するユーザーの要求を、ソース管理プラグインでサポートされている関数呼び出しに変換する IDE のコンポーネントです。 これを行うには、IDE とソース管理プラグインに、IDE とプラグインの間で情報をやり取りする有効なダイアログが必要です。 このダイアログを実行するには、両方とも同じ言語を話す必要があります。 このドキュメントで概説されているソース管理プラグイン API は、この交換の一般的なボキャブラリです。
VS とソース管理プラグインの間の相互作用を示すアーキテクチャ図
アーキテクチャ図に示すように、図の VS シェルとしてラベル付けされた Visual Studio シェルは、ユーザーの作業プロジェクトと、エディターやソリューション エクスプローラーなどの関連コンポーネントをホストします。 ソース管理アダプター パッケージは、IDE とソース管理プラグインの間の相互作用を処理します。 ソース管理アダプター パッケージには、独自のソース管理 UI が用意されています。 これは、ソース管理操作のスコープを開始および定義するためにユーザーが操作する最上位の UI です。
ソース管理プラグインは、図に示すように 2 つの部分で構成される独自の UI を持つことができます。 "Vendor UI" というラベルの付いたボックスは、ソース管理プラグイン作成者として提供するカスタム ユーザー インターフェイス要素を表します。 これらは、ユーザーが高度なソース管理操作を呼び出すと、ソース管理プラグインによって直接表示されます。 "ヘルパー UI" というラベルの付いたボックスは、IDE を介して間接的に呼び出される一連のソース管理プラグイン UI 機能です。 ソース管理プラグインは、IDE によって提供される特殊なコールバック関数を介して、UI 関連のメッセージを IDE に渡します。 ヘルパー UI は、(多くの場合 、高度な ボタンを使用して) IDE とのよりシームレスな統合を容易にし、より統一されたエンドユーザー エクスペリエンスを提供します。
ソース管理プラグインは、Visual Studio シェルに変更を加えることはできません。そのため、ソース管理アダプター パッケージまたは IDE によって提供されるソース管理 UI に変更を加えることはできません。 エンド ユーザーの統合エクスペリエンスに貢献するさまざまなソース管理プラグイン API 関数の実装によって提供される柔軟性を最大限に活用する必要があります。 ソース管理プラグイン API ドキュメントのリファレンス セクションには、いくつかの高度なソース管理プラグイン機能に関する情報が含まれています。 これらの機能を利用するには、ソース管理プラグインは初期化中に高度な機能を IDE に宣言する必要があり、各機能に固有の高度な機能を実装する必要があります。