Partilhar via


MSSCCPRJ.Arquivo de SCC

Quando uma solução de Visual Studio ou projeto está sob controle de origem usando o IDE, o IDE recebe duas partes importantes de informações do plug-in na forma de cadeias de caracteres de controle de origem. Essas cadeias de caracteres "AuxPath" e "Nomedoprojeto", são opacas ao IDE, mas eles são usados pelo plug-in para localizar a solução ou projeto no controle de versão. O IDE geralmente obtém essas cadeias de caracteres na primeira vez, chamando o Função SccGetProjPath, e, em seguida, salvá-los no arquivo de solução ou projeto para futuras chamadas para o Função SccOpenProject. Quando os arquivos de solução e projeto incorporada, as seqüências de caracteres "AuxPath" e "Nomedoprojeto" não são automaticamente atualizadas quando um usuário branches, bifurcações, ou copia os arquivos de solução e projeto que estão no controle de versão. Para certificar-se de que os arquivos de solução e projeto apontam para o local correto no controle de versão, os usuários devem atualizar manualmente as seqüências de caracteres. Porque as seqüências de caracteres devem ser opaco, não sempre pode ser clara como devem ser atualizados.

O plug-in de controle de origem pode evitar esse problema, armazenando as seqüências de caracteres "AuxPath" e "Nomedoprojeto" em um arquivo especial denominado o MSSCCPRJ.Arquivo de SCC. Ele é um arquivo local, do lado do cliente que é de propriedade e mantido pelo plug-in. Este arquivo nunca é colocado sob controle de origem, mas é gerado pelo plug-in para todos os diretórios que contém os arquivos de origem controlada. Para determinar quais arquivos são arquivos de solução e projeto de Visual Studio, um plug-in de controle de origem pode comparar as extensões de arquivo com uma lista padrão ou fornecido pelo usuário. Depois que o IDE detecta que um plug-in suporta o MSSCCPRJ.Arquivo de SCC, deixa incorporar o "AuxPath" e "Nomedoprojeto" de seqüências de caracteres em arquivos de projeto e solução e ele lê a essas cadeias de caracteres da MSSCCPRJ.SCC de arquivo em vez disso.

Um controle de fonte plug-in que ofereça suporte a MSSCCPRJ.Arquivo de SCC deve atender as seguintes diretrizes:

  • Só pode haver um MSSCCPRJ.Arquivo de SCC por diretório.

  • Um MSSCCPRJ.Arquivo de SCC pode conter o "AuxPath" e "Nomedoprojeto" para vários arquivos que estão sob controle de origem dentro de um determinado diretório.

  • A seqüência de caracteres "AuxPath" não deve ter aspas dentro dela. É permitido ter aspas ao redor dele como delimitadores (por exemplo, um par de aspas duplas pode ser usado para indicar uma seqüência vazia). O IDE irá remover todas as cotações da seqüência de caracteres "AuxPath" quando ele é lido a partir do MSSCCPRJ.Arquivo de SCC.

  • A seqüência de caracteres "Nomedoprojeto" no MSSCCPRJ.SCC file deve corresponder exatamente a seqüência de caracteres retornada da SccGetProjPath função. Se a seqüência de caracteres retornada pela função tiver aspas ao redor dele, a cadeia de caracteres do MSSCCPRJ.Arquivo de SCC deve ter aspas ao redor dele e vice-versa.

  • Um MSSCCPRJ.Arquivo de SCC é criado ou atualizado sempre que um arquivo é colocado sob controle de origem.

  • Se um MSSCCPRJ.Arquivo de SCC é excluído, um provedor deverá ser regenerado-lo na próxima vez que ele executa uma operação de controle de origem referentes ao diretório.

  • Um MSSCCPRJ.Arquivo de SCC estritamente deve seguir o formato definido.

Uma ilustração do MSSCCPRJ.Formato de arquivo de SCC

Veja a seguir uma amostra do MSSCCPRJ.Formato de arquivo do SCC (os números de linha são fornecidos apenas como um guia e não devem ser incluídos no corpo do arquivo):

[Linha 1]SCC = This is a Source Code Control file

[Linha 2]

[Linha 3][TestApp.sln]

[Linha 4]SCC_Aux_Path = "\\server\vss\"

[Linha 5]SCC_Project_Name = "$/TestApp"

[Linha 6]

[Linha 7][TestApp.csproj]

[Linha 8]SCC_Aux_Path = "\\server\vss\"

[Linha 9]SCC_Project_Name = "$/TestApp"

A primeira linha declara a finalidade do arquivo e serve como a assinatura de todos os arquivos deste tipo. Esta linha deve ser exibido exatamente desta em todos os MSSCCPRJ.Arquivos SCC:

SCC = This is a Source Code Control file

O que se segue é uma seção de configurações para cada arquivo, marcado pelo nome de arquivo entre colchetes. Esta seção é repetida para cada arquivo que está sendo controlado. Essa linha é um exemplo de um nome de arquivo, ou seja, [TestApp.csproj]. O IDE espera que as duas linhas seguintes. No entanto, ele não define o estilo dos valores definidos. As variáveis são SCC_Aux_Path e SCC_Project_Name.

SCC_Aux_Path = "\\server\vss\"

SCC_Project_Name = "$/TestApp"

Não há nenhum delimitador final para esta seção. O nome do arquivo, bem como todas as literais que aparecem no arquivo, são definidos no arquivo de cabeçalho scc.h. Para obter mais informações, consulte Seqüências de caracteres usadas como chaves para a localização de um controle de fonte plug-in.

Consulte também

Conceitos

Seqüências de caracteres usadas como chaves para a localização de um controle de fonte plug-in

Outros recursos

Plug-ins de controle de origem