Compartir a través de


Modelo para paquetes de control de código fuente

El siguiente modelo representa un ejemplo de una implementación de control de código fuente. En el modelo, verá las interfaces que debe implementar y los servicios de entorno a los que debe llamar. Igual que con todos los servicios, realmente llama a los métodos de una interfaz determinada que obtiene mediante el servicio. Los nombres de las clases se identifican para que sea más fácil ver cómo se lleva a cabo el control de código fuente.

Ejemplos de SCC_TUP

Ejemplo de proyecto de control de código fuente

Interfaces

Puede implementar el control de código fuente para los nuevos tipos de proyecto en Visual Studio mediante la lista de interfaces que se muestran en la tabla siguiente.

Interfaz Usar
IVsQueryEditQuerySave2 Llamado por proyectos y editores antes de guardar o cambiar archivos (con modificaciones). A esta interfaz se accede usando el servicio SVsQueryEditQuerySave.
IVsTrackProjectDocuments2 Llamado por proyectos para solicitar permiso para agregar, eliminar o cambiar el nombre de un archivo o directorio. Los proyectos también llaman a esta interfaz para informar al entorno cuando se completa una acción aprobada de adición, eliminación o cambio de nombre. Se accede a ella mediante el servicio SVsTrackProjectDocuments.
IVsTrackProjectDocumentsEvents2 Implementado por cualquier entidad que se registre para recibir notificaciones cuando los proyectos añadan, cambien el nombre o eliminen un archivo o directorio. Para registrarse para la notificación de eventos, llame a AdviseTrackProjectDocumentsEvents.
IVsSccManager2 Lo llaman los proyectos para registrarse con el paquete de control de código fuente y obtener información sobre el estado del control de código fuente. A esta interfaz se accede usando el servicio SVsSccManager.
IVsSccProject2 Implementado por el proyecto para responder a solicitudes de control de código fuente para obtener información sobre los archivos y obtener la configuración de control de código fuente necesaria para el archivo del proyecto.