原始檔控制整合總覽
本章節會比較兩種方式可以整合到 Visual Studio 的原始檔控制。 原始檔控制外掛程式和 VSPackage,它提供原始檔控制方案,並會反白顯示新的原始檔控制功能。 Visual Studio 可讓您手動切換原始檔控制 VSPackages 及原始檔控制外掛程式,以及自動方案為基礎的切換。
原始檔控制整合
Visual Studio支援兩種類型的原始檔控制整合選項。 在所有版本的Visual Studio,您仍然可以將整合為外掛程式,以根據原始檔控制外掛程式 API (先前也稱為 MSSCCI API),提供基本原始檔控制功能時使用 Visual Studio 的原始檔控制使用者介面 (UI)。 原始檔控制 VSPackage,相反地,提供新的深度整合Visual Studio SDK適用於要求高層級的複雜度,並在其原始檔控制模型中的自治主控權的原始檔控制整合的路徑。
原始檔控制外掛程式
所有版本的 Visual Studio 都支援作為整合路徑的原始檔控制外掛程式 API 規格 1.2 版。 原始檔控制外掛程式實作器撰寫實作中所述的原始檔控制外掛程式 API 函式原始檔控制整合和註冊建立原始檔控制外掛程式。 在這種方式,使用整合式開發環境 (IDE) Visual Studio使用者介面對話方塊項目,例如簽入簽出、 工具] / [選項] 屬性頁、 工具列和原始檔控制圖像 (glyph)。 嚴格遵循原始檔控制外掛程式 API 確保輕鬆整合 Visual Studio 以及簡單的使用者經驗。 這表示原始檔控制外掛程式必須實作大部分的函式和詳細的 API 中的回呼。
若要實作的原始檔控制外掛程式使用原始檔控制外掛程式的 API,請依照下列步驟執行:
建立實作中所指定的函式的 DLL 原始檔控制外掛程式。
藉由適當的登錄項目中登錄的 DLL (述How to: 安裝原始檔控制外掛程式)。
UI 和顯示原始檔控制配接器套件 (Visual Studio 元件處理透過原始檔控制外掛程式的原始檔控制功能)] 出現提示時建立協助程式
在原始檔控制命令的回應,Visual Studio 的 IDE 會呈現標準的 UI 進行基本的作業,並能再將資訊傳送至原始檔控制外掛程式透過原始檔控制外掛程式 API 中所定義的函式。 使用進階選項,請原始檔控制外掛程式可能呼叫以呈現其本身的 UI,比方說,瀏覽原始檔控制專案。 這表示使用者可能會看到兩個可能是不同的樣式,使用者介面處理原始檔控制時: Visual Studio 所提供的 UI 和原始檔控制外掛程式會顯示 UI。 這是最明顯的進階的原始檔控制作業。
若要實作的原始檔控制外掛程式的缺點
供進階的功能,使用者可能會看到兩種不同樣式的介面,因而導致可能的混淆。
原始檔控制外掛程式會侷限於原始檔控制外掛程式 API 所暗示的原始檔控制模型。
原始檔控制外掛程式 API 可能太嚴格,有些原始檔控制案例。
若要實作的原始檔控制外掛程式的優點
Visual Studio 會提供所有基本原始檔控制作業的 UI,使原始檔控制外掛程式就不必實作可能很複雜的 UI。
嚴格的 API,因原始檔控制外掛程式可輕易地與互動外部原始檔控制程式,以提供更多的功能。 Visual Studio 不處理太多了如何原始檔控制功能完成,只會根據原始檔控制外掛程式 API 來完成。
它是實作於 VSPackage 的原始檔控制外掛程式的原始檔控制的工作變得更容易。
原始檔控制 VSPackage
Visual Studio SDK允許到 Visual Studio 的 Visual Studio 所提供的原始檔控制使用者介面完全取代與原始檔控制功能的 [完全控制的深度整合。 原始檔控制 VSPackage 與 Visual Studio 的登錄,並提供 [原始檔控制功能。 Visual Studio 可以註冊多個原始檔控制 VSPackages,雖然只有一種可以使用一次。 原始檔控制 VSPackage 在 Visual Studio 中有原始檔控制功能及外觀的完全控制權,作用中時。 所有其他原始檔控制可能會在系統中註冊的 VSPackages 非作用中,而且不會完全顯示任何 UI。
實作 VSPackage 的原始檔控制需要 「 所有或執行任何動作 」 的策略。 我能修改原始檔控制 VSPackage 必須投入大量的心力實作許多原始檔控制介面與新的 UI 項目 (對話方塊、 功能表和工具列) 來涵蓋整個的原始檔控制功能。 如需詳細資訊,請參閱 建立原始檔控制 VSPackage。
若要實作 [原始檔控制 VSPackage 的缺點
VSPackage 必須實作複雜的介面,以成功地整合 Visual Studio 的數字。
VSPackage 必須提供原始檔控制 ; 所需的所有 UI Visual Studio 會提供無法在這方面的協助。
原始檔控制 VSPackage 都可感知繫結至 Visual Studio,因此不一樣的容易共用功能,與外部的原始檔控制程式版本,與獨立的程式無法作業。
若要實作 [原始檔控制 VSPackage 的優點
由於 VSPackage 的原始檔控制 UI 的完全控制權和功能,使用者就得面對一個完美的介面,讓原始檔控制。
VSPackage 並不限於特定原始檔控制模型。