Compartilhar via


Visão geral da integração do controle do código-fonte

Esta seção compara as duas maneiras de se integrar ao controle do código-fonte do Visual Studio; um Plug-in de controle do código-fonte e um VSPackage que fornece uma solução de controle do código-fonte e realça os novos recursos de controle do código-fonte. O Visual Studio permite alternar manualmente entre VSPackages de controle do código-fonte e plug-ins de controle do código-fonte, bem como comutação automática baseada em solução.

Integração do controle do código-fonte

O Visual Studio dá suporte a dois tipos de opções de integração de controle do código-fonte. Em todas as versões do Visual Studio, você ainda pode integrar um plug-in com base na API do Plug-in de Controle do Código-Fonte (anteriormente também conhecida como API MSSCCI), que fornece funcionalidade básica de controle do código-fonte ao usar a interface do usuário do controle do código-fonte (interface do usuário) do Visual Studio. Um VSPackage de controle de versão, por outro lado, fornece um novo caminho de integração profunda no SDK do Visual Studio, adequado para a integração do controle de versão que exige um alto nível de sofisticação e autonomia em seu modelo de controle de versão.

Visão geral do controle de versão do código-fonte

Plug-in de controle do código-fonte

Todas as versões do Visual Studio dão suporte à especificação da API do Plug-in de Controle de Origem versão 1.2 como um caminho de integração. Um implementador de plug-in de controle do código-fonte grava uma DLL que implementa as funções de API do Plug-in de Controle do Código-Fonte para integração e registro de controle do código-fonte, conforme descrito na criação de um plug-in de controle do código-fonte. Nessa abordagem, o IDE (Ambiente de Desenvolvimento Integrado) usa a interface do usuário do Visual Studio para caixas de diálogo, como check-in, check-out, páginas de propriedades de ferramentas/opções, barras de ferramentas e glifos de controle do código-fonte. A adesão rigorosa à API de Plug-in de Controle do Código-Fonte garante uma integração fácil ao Visual Studio e uma experiência sem problemas para o usuário. Isso significa que o plug-in de controle do código-fonte deve implementar a maioria das funções e retornos de chamada detalhados na API.

Para implementar um plug-in de controle do código-fonte usando a API do Plug-in de Controle do Código-Fonte, siga estas etapas:

  1. Crie uma DLL que implemente as funções especificadas nos Plug-ins de Controle do Código-Fonte.

  2. Registre a DLL fazendo as entradas apropriadas do Registro (descritas em How to: Install a Source Control Plug-in).

  3. Criar uma interface do usuário auxiliar e exibir quando solicitado pelo Pacote do Adaptador de Controle do Código-Fonte (o componente do Visual Studio que manipula a funcionalidade de controle do código-fonte por meio de plug-ins de controle do código-fonte)

    Em resposta a um comando de controle do código-fonte, o IDE do Visual Studio apresenta uma interface do usuário padrão para as operações básicas e, em seguida, passa as informações para o plug-in de controle do código-fonte por meio das funções definidas na API de Plug-in de Controle do Código-Fonte. Para opções avançadas, o plug-in de controle do código-fonte pode ser chamado para apresentar sua própria interface do usuário, por exemplo, procurando um projeto controlado pela origem. Isso significa que o usuário pode ser apresentado com dois estilos possivelmente diferentes de interface do usuário ao lidar com o controle do código-fonte: a interface do usuário que o Visual Studio apresenta e a interface do usuário que o plug-in de controle do código-fonte apresenta. Isso é mais perceptível com operações avançadas de controle do código-fonte.

Desvantagens para implementar um plug-in de controle do código-fonte

  • Para recursos avançados, o usuário pode ver dois estilos diferentes de interfaces, levando a uma possível confusão.

  • O plug-in de controle do código-fonte está confinado ao modelo de controle do código-fonte implícito pela API de Plug-in de Controle do Código-Fonte.

  • A API de Plug-in de Controle do Código-Fonte pode ser muito restritiva para alguns cenários de controle do código-fonte.

Vantagens de implementar um plug-in de controle do código-fonte

  • O Visual Studio fornece toda a interface do usuário para todas as operações básicas de controle do código-fonte para que o plug-in de controle do código-fonte não precise implementar uma interface do usuário potencialmente complexa.

  • Devido à API estrita, o plug-in de controle do código-fonte pode interagir prontamente com programas externos de controle do código-fonte para fornecer uma funcionalidade mais ampla; O Visual Studio não se importa muito com a funcionalidade de controle do código-fonte, apenas que ela é realizada de acordo com a API do Plug-in de Controle do Código-Fonte.

  • É mais fácil implementar um plug-in de controle do código-fonte do que um VSPackage de controle do código-fonte.

VSPackage de Controle do Código-Fonte

O SDK do Visual Studio permite uma integração profunda ao Visual Studio com controle total da funcionalidade de controle do código-fonte e substituição completa da interface do usuário de controle do código-fonte fornecida pelo Visual Studio. Um VSPackage de controle do código-fonte é registrado no Visual Studio e fornece funcionalidade de controle do código-fonte. Embora vários VSPackages de controle do código-fonte possam ser registrados no Visual Studio, apenas um deles pode estar ativo a qualquer momento. Um VSPackage de controle do código-fonte tem controle total sobre a funcionalidade de controle do código-fonte e a aparência no Visual Studio enquanto ele está ativo. Todos os outros VSPackages de controle do código-fonte que podem ser registrados no sistema estão inativos e não exibirão nenhuma UI.

Implementar um VSPackage de controle do código-fonte requer uma estratégia "tudo ou nada". O criador de um VSPackage de controle de versão deve investir um esforço considerável na implementação de diversas interfaces de controle de versão e novos elementos de interface do usuário (caixas de diálogo, menus e barras de ferramentas) para cobrir toda a funcionalidade de controle de versão. Consulte Como criar um VSPackage de controle do código-fonte para obter mais detalhes.

Desvantagens para implementar um VSPackage de controle do código-fonte

  • O VSPackage deve implementar várias interfaces complexas para se integrar com êxito ao Visual Studio.

  • O VSPackage deve fornecer toda a interface do usuário necessária para o controle do código-fonte; O Visual Studio não fornecerá assistência nesta área.

  • Um VSPackage de controle do código-fonte está intimamente vinculado ao Visual Studio e não pode operar com programas autônomos, portanto, a funcionalidade não pode ser tão facilmente compartilhada com uma versão externa do programa de controle do código-fonte.

Vantagens de implementar um VSPackage de controle do código-fonte

  • Como o VSPackage tem controle total sobre a interface do usuário e a funcionalidade do controle do código-fonte, o usuário recebe uma interface perfeita para o controle do código-fonte.

  • O VSPackage não está confinado a um modelo de controle do código-fonte específico.