Partilhar via


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

Você pode adicionar suporte ao controle do código-fonte ao ambiente de desenvolvimento integrado (IDE) do Visual Studio implementando e anexando um plug-in de controle do código-fonte. IDE conecta-se ao plug-in de controlo do código-fonte por meio da bem definida API de Plug-In de Controlo do Código-Fonte. 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 (UI) 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 do código-fonte 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 do código-fonte 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 de versão esqueleto demonstrando a implementação de funções essenciais compatíveis com a API de plug-in de controle de versão.

A especificação da API de plug-in de controle do código-fonte permite que você aproveite 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 traduz a solicitação do usuário para uma operação de controle do código-fonte em uma chamada de função suportada pelo 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 ocorra, 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 os componentes associados, como os editores e o Gerenciador de Soluções. O pacote do adaptador de controle do código-fonte lida com 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. É a interface do usuário de nível superior com a qual 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 "Interface do usuário do fornecedor" representa os elementos personalizados da interface do usuário que você, como criador do plug-in de controle do código-fonte, fornece. Eles são exibidos 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 "Helper UI" é um conjunto de recursos da 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 o IDE por meio de funções especiais de retorno de chamada fornecidas pelo IDE. A interface do usuário auxiliar facilita uma integração mais perfeita com o IDE (geralmente através do uso de um botão Avançado ) e, portanto, fornece uma experiência de usuário final mais unificada.

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. Deve tirar o máximo partido da flexibilidade oferecida através da implementação das várias funções da API do Plug-in de Controlo do Código-fonte que contribuem para uma experiência integrada para o utilizador final. A seção de referência da documentação da API do plug-in de controle do código-fonte inclui informações sobre alguns recursos avançados do 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 ao IDE durante a inicialização e implementar funções avançadas específicas para cada recurso.