Partilhar via


Criando pastas do recipiente pai para soluções

Na API plug-in de fonte de controle de versão 1.2, um usuário pode especificar um destino de controle de origem de raiz única para todos os projetos da Web dentro da solução. Esta raiz única é chamado de uma raiz de Unificação de Super (SUR).

Na versão 1.1 de origem de API ao plug-in de controle, se o usuário adicionado a uma solução multiprojeto ao controle de origem, o usuário foi solicitado a especificar um destino de controle de origem para cada projeto da Web.

Novos sinalizadores de recurso

SCC_CAP_CREATESUBPROJECT

SCC_CAP_GETPARENTPROJECT

Novas funções

Função SccCreateSubProject

Função SccGetParentProjectPath

O Visual Studio IDE quase sempre cria uma pasta SUR ao adicionar uma solução ao controle de origem. Especificamente, ele faz isso nos seguintes casos:

  • O projeto é um compartilhamento de arquivo de projeto da Web.

  • Há unidades diferentes para o projeto e o arquivo de solução.

  • Existem diferentes compartilhamentos para o projeto e o arquivo de solução.

  • Projetos foram adicionados separadamente (em uma solução controlada por fonte).

Na Visual Studio é sugerido que o nome da pasta SUR ser o mesmo que o nome da solução sem a extensão. A tabela a seguir resume o comportamento nas duas versões.

Característica

tSource plug-in de controle API versão 1.1

Plug-in API versão 1.2 do controle de origem

Adicionar solução ao SCC

SccInitialize()

SccGetProjPath()

SccGetProjPath()

SccOpenProject()

SccInitialize()

SccGetProjPath()

SccCreateSubProject()

SccCreateSubProject()

SccOpenProject()

Adicionar projeto à solução controlada por origem

SccGetProjPath()

OpenProject()

SccGetParentProjectPath()

SccOpenProject()

Dica

Visual Studio supõe que uma solução é um filho direto da SUR.

Exemplos

A tabela a seguir lista exemplos de dois. Em ambos os casos, o Visual Studio usuário é solicitado a fornecer um local de destino para a solução sob controle de origem até o user_choice é especificado como um destino.Quando o user_choice for especificado, a solução e os dois projetos são adicionados sem avisar o usuário para destinos de controle de origem.

Solução contém

Em locais de disco

Estrutura do banco de dados padrão

sln1.sln

Web1

WEB2

C:\Solutions\sln1

C:\Inetpub\wwwroot\Web1

\\server\wwwroot$\web2

$/user_choice/sln1

$/user_choice/C/Web1

$/user_choice/Web2

sln1.sln

Web1

Win1

C:\Solutions\sln1

D:\Inetpub\wwwroot\Web1

C:\solutions\sln1\Win1

$/user_choice/sln1

$/user_choiceD/web1

$/user_choicesln1/win1

A SUR pasta e subpastas são criadas independentemente da operação for cancelada ou falha devido a um erro. Eles não são automaticamente removidos em condições de erro ou Cancelar.

Visual Studiopadrões de comportamento da versão 1.1 se o plug-in de controle de origem não retornar SCC_CAP_CREATESUBPROJECT e SCC_CAP_GETPARENTPROJECT sinalizadores de recurso. Além disso, os usuários do Visual Studio pode escolher reverter para o comportamento da versão 1.1, definindo o valor da seguinte chave para DWORD: 00000001:

[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\8.0\SourceControl] "DoNotCreateSolutionRootFolderInSourceControl" = DWORD: 00000001

Consulte também

Conceitos

What ' s New in the Source Control plug-in API versão 1.2