Condividi tramite


Panoramica dell'integrazione del controllo del codice sorgente

Questa sezione confronta i due modi per integrarsi nel controllo del codice sorgente di Visual Studio; un plug-in del controllo del codice sorgente e un VSPackage che fornisce una soluzione di controllo del codice sorgente ed evidenzia le nuove funzionalità del controllo del codice sorgente. Visual Studio consente il passaggio manuale tra i pacchetti VSPackage del controllo del codice sorgente e i plug-in di controllo del codice sorgente, nonché il cambio automatico basato su soluzioni.

Integrazione del controllo del codice sorgente

Visual Studio supporta due tipi di opzioni di integrazione del controllo del codice sorgente. In tutte le versioni di Visual Studio è comunque possibile integrare un plug-in basato sull'API plug-in del controllo del codice sorgente (precedentemente definita anche API MSSCCI), che fornisce funzionalità di controllo del codice sorgente di base durante l'uso dell'interfaccia utente del controllo del codice sorgente di Visual Studio. Un pacchetto VSPackage per il controllo del codice sorgente offre invece un nuovo percorso visual Studio SDK di integrazione completa adatto per l'integrazione del controllo del codice sorgente che richiede un elevato livello di complessità e autonomia nel modello di controllo del codice sorgente.

Source Control Overview

Plug-in controllo del codice sorgente

Tutte le versioni di Visual Studio supportano la specifica API Plug-in plug-in del controllo del codice sorgente versione 1.2 come percorso di integrazione. Un implementatore del plug-in del controllo del codice sorgente scrive una DLL che implementa le funzioni API plug-in del controllo del codice sorgente per l'integrazione e la registrazione del controllo del codice sorgente, come descritto in Creazione di un plug-in di controllo del codice sorgente. In questo approccio, l'IDE (Integrated Development Environment) usa l'interfaccia utente di Visual Studio per le finestre di dialogo, ad esempio archiviazione, estrazione, strumenti/opzioni pagine delle proprietà, barre degli strumenti e glifi del controllo del codice sorgente. La stretta conformità all'API plug-in del controllo del codice sorgente assicura un'integrazione semplice in Visual Studio e un'esperienza senza problemi per l'utente. Ciò significa che il plug-in del controllo del codice sorgente deve implementare la maggior parte delle funzioni e dei callback descritti in dettaglio nell'API.

Per implementare un plug-in del controllo del codice sorgente usando l'API plug-in del controllo del codice sorgente, seguire questa procedura:

  1. Creare una DLL che implementa le funzioni specificate nei plug-in di controllo del codice sorgente.

  2. Registrare la DLL apportando le voci del Registro di sistema appropriate (descritte in Procedura: Installare un plug-in del controllo del codice sorgente).

  3. Creare un'interfaccia utente helper e visualizzare quando richiesto dal pacchetto dell'adattatore del controllo del codice sorgente (il componente di Visual Studio che gestisce la funzionalità di controllo del codice sorgente tramite plug-in di controllo del codice sorgente)

    In risposta a un comando del controllo del codice sorgente, l'IDE di Visual Studio presenta un'interfaccia utente standard per le operazioni di base e quindi passa le informazioni al plug-in del controllo del codice sorgente tramite le funzioni definite nell'API plug-in del controllo del codice sorgente. Per le opzioni avanzate, il plug-in del controllo del codice sorgente può essere chiamato su per presentare la propria interfaccia utente, ad esempio l'esplorazione di un progetto controllato dal codice sorgente. Ciò significa che l'utente può essere presentato con due stili di interfaccia utente probabilmente diversi quando si usa il controllo del codice sorgente: l'interfaccia utente presentata da Visual Studio e l'interfaccia utente presentata dal plug-in del controllo del codice sorgente. Ciò è più evidente con operazioni avanzate di controllo del codice sorgente.

Svantaggi dell'implementazione di un plug-in di controllo del codice sorgente

  • Per le funzionalità avanzate, l'utente può visualizzare due diversi stili di interfacce, causando possibili confusione.

  • Il plug-in del controllo del codice sorgente è limitato al modello di controllo del codice sorgente implicito nell'API Plug-in del controllo del codice sorgente.

  • L'API plug-in del controllo del codice sorgente potrebbe essere troppo restrittiva per alcuni scenari di controllo del codice sorgente.

Vantaggi dell'implementazione di un plug-in di controllo del codice sorgente

  • Visual Studio fornisce tutta l'interfaccia utente per tutte le operazioni di controllo del codice sorgente di base in modo che il plug-in del controllo del codice sorgente non deve implementare un'interfaccia utente potenzialmente complessa.

  • A causa dell'API strict, il plug-in del controllo del codice sorgente può facilmente interagire con i programmi di controllo del codice sorgente esterni per fornire funzionalità più estese; Visual Studio non importa troppo quanto viene eseguita la funzionalità di controllo del codice sorgente, ma solo che viene eseguita in base all'API plug-in del controllo del codice sorgente.

  • È più semplice implementare un plug-in del controllo del codice sorgente rispetto a un pacchetto VSPackage per il controllo del codice sorgente.

VSPackage controllo del codice sorgente

Visual Studio SDK consente un'integrazione completa in Visual Studio con il controllo completo delle funzionalità di controllo del codice sorgente e la sostituzione completa dell'interfaccia utente del controllo del codice sorgente fornita da Visual Studio. Un pacchetto VSPackage del controllo del codice sorgente viene registrato con Visual Studio e fornisce funzionalità di controllo del codice sorgente. Anche se è possibile registrare più pacchetti VSPackage di controllo del codice sorgente con Visual Studio, solo uno di essi può essere attivo in qualsiasi momento. Un controllo del codice sorgente VSPackage ha il controllo completo sulle funzionalità e l'aspetto del controllo del codice sorgente in Visual Studio mentre è attivo. Tutti gli altri PACCHETTI VSPackage di controllo del codice sorgente che possono essere registrati nel sistema sono inattivi e non visualizzeranno affatto alcuna interfaccia utente.

L'implementazione di un pacchetto VSPackage per il controllo del codice sorgente richiede una strategia "tutto o niente". L'autore di un VSPackage di controllo del codice sorgente deve investire una notevole quantità di sforzi nell'implementazione di una serie di interfacce di controllo del codice sorgente e nuovi elementi dell'interfaccia utente (finestre di dialogo, menu e barre degli strumenti) per coprire l'intera funzionalità di controllo del codice sorgente. Per altri dettagli, vedere Creazione di un PACCHETTO VSPackage per il controllo del codice sorgente.

Svantaggi dell'implementazione di un pacchetto VSPackage per il controllo del codice sorgente

  • Il VSPackage deve implementare diverse interfacce complesse per integrarsi correttamente con Visual Studio.

  • Il VSPackage deve fornire tutta l'interfaccia utente necessaria per il controllo del codice sorgente; Visual Studio non fornirà assistenza in questa area.

  • Un pacchetto VSPackage del controllo del codice sorgente è strettamente collegato a Visual Studio e non può funzionare con programmi autonomi, pertanto la funzionalità non può essere facilmente condivisa con una versione esterna del programma di controllo del codice sorgente.

Vantaggi dell'implementazione di un pacchetto VSPackage per il controllo del codice sorgente

  • Poiché il VSPackage ha il controllo completo sull'interfaccia utente e sulle funzionalità del controllo del codice sorgente, l'utente viene presentato con un'interfaccia trasparente per il controllo del codice sorgente.

  • Il pacchetto VSPackage non è limitato a un particolare modello di controllo del codice sorgente.