Compartilhar via


Arquitetura do plug-in de controle do código-fonte

Você pode adicionar suporte ao controle do código-fonte ao IDE (ambiente de desenvolvimento integrado) do Visual Studio implementando e anexando um plug-in de controle do código-fonte. O IDE se conecta ao plug-in de controle do código-fonte por meio da API de Plug-In de Controle do Código-Fonte bem definida. O IDE expõe os recursos de controle de versão do sistema de controle do código-fonte fornecendo uma interface do usuário (interface do usuário) que consiste em barras de ferramentas e comandos de menu. O plug-in de controle do código-fonte implementa a funcionalidade de controle do código-fonte.

Recursos de plug-in de controle do código-fonte

O Plug-in de Controle de Origem fornece recursos para ajudar a criar e conectar seu aplicativo de controle de versão ao IDE do Visual Studio. O Plug-in de Controle de Origem contém a especificação da API que deve ser implementada por um plug-in de controle do código-fonte para que ele possa ser integrado ao IDE do Visual Studio. Ele também contém um exemplo de código (escrito em C++) que implementa um plug-in de controle do código-fonte esqueleto demonstrando a implementação de funções essenciais em conformidade com a API do Plug-in de Controle do Código-Fonte.

A especificação da API do Plug-in de Controle do Código-Fonte permite aproveitar qualquer sistema de controle do código-fonte de sua escolha se você criar uma DLL de controle do código-fonte com o conjunto necessário de funções implementadas de acordo com a API do Plug-in de Controle do Código-Fonte.

Components

O Pacote do Adaptador de Controle do Código-Fonte no diagrama é o componente do IDE que converte a solicitação do usuário para uma operação de controle do código-fonte em uma chamada de função compatível com o plug-in de controle do código-fonte. Para que isso aconteça, o IDE e o plug-in de controle do código-fonte devem ter uma caixa de diálogo eficaz que passe informações entre o IDE e o plug-in. Para que esse diálogo aconteça, ambos devem falar a mesma língua. A API de Plug-in de Controle do Código-Fonte descrita nesta documentação é o vocabulário comum para essa troca.

Diagrama de Arquitetura de Controle de Código-Fonte

Diagrama de Arquitetura mostrando a interação entre o VS e o plug-in de controle do código-fonte

Conforme mostrado no diagrama de arquitetura, o shell do Visual Studio, rotulado como shell vs no diagrama, hospeda os projetos de trabalho do usuário e componentes associados, como os editores e o Gerenciador de Soluções. O Pacote do Adaptador de Controle do Código-Fonte manipula a interação entre o IDE e o plug-in de controle do código-fonte. O Pacote do Adaptador de Controle do Código-Fonte fornece sua própria interface do usuário de controle do código-fonte. É com a interface do usuário de nível superior que o usuário interage para iniciar e definir o escopo de uma operação de controle do código-fonte.

O plug-in de controle do código-fonte pode ter sua própria interface do usuário, que pode consistir em duas partes, conforme mostrado na figura. A caixa rotulada "UI do Fornecedor" representa elementos personalizados da interface do usuário que você, como desenvolvedor de plug-ins de controle de código-fonte, fornece. Elas são exibidas diretamente pelo plug-in de controle do código-fonte quando o usuário invoca uma operação avançada de controle do código-fonte. A caixa rotulada como "Interface do Usuário do Auxiliar" é um conjunto de recursos de interface do usuário do plug-in de controle do código-fonte que são invocados indiretamente por meio do IDE. O plug-in de controle do código-fonte passa mensagens relacionadas à interface do usuário para a IDE por meio de funções especiais de retorno de chamada fornecidas pela IDE. A interface do usuário auxiliar facilita uma integração mais perfeita com o IDE (geralmente por meio do uso de um botão Avançado ) e, portanto, fornece uma experiência mais unificada do usuário final.

Um plug-in de controle do código-fonte não pode fazer alterações no shell do Visual Studio e, consequentemente, no Pacote do Adaptador de Controle do Código-Fonte ou na interface do usuário do controle do código-fonte fornecida pelo IDE. Ele deve fazer uso máximo da flexibilidade oferecida por meio da implementação das várias funções de API do Plug-in de Controle do Código-Fonte que contribuem para uma experiência integrada para o usuário final. A seção de referência da documentação da API do Plug-in de Controle do Código-Fonte inclui informações para alguns recursos avançados de plug-in de controle do código-fonte. Para explorar esses recursos, o plug-in de controle do código-fonte deve declarar seus recursos avançados para o IDE durante a inicialização e deve implementar funções avançadas específicas para cada funcionalidade.