Création de dossiers de conteneur Parent pour les SolutionsCreating Parent Container Folders for Solutions

Dans l’API de plug-in de contrôle de Source de version 1.2, un utilisateur peut spécifier une destination de contrôle de source de racine unique pour tous les projets Web dans la solution.In the Source Control Plug-in API version 1.2, a user can specify a single root source control destination for all Web projects within the solution. Cette racine unique est appelée une racine d’unifiée Super (SUR).This single root is called a Super Unified Root (SUR).

Dans l’API de plug-in de contrôle de Source de version 1.1, si l’utilisateur a ajouté une solution multiprojet au contrôle de code source, l’utilisateur a été invité à spécifier une destination de contrôle de code source pour chaque projet Web.In the Source Control Plug-in API version 1.1, if the user added a multiproject solution to source control, the user was prompted to specify one source control destination for each Web project.

Nouveaux indicateurs de capacitéNew Capability Flags

SCC_CAP_CREATESUBPROJECT

SCC_CAP_GETPARENTPROJECT

Nouvelles fonctionsNew Functions

SccCreateSubProjectSccCreateSubProject

SccGetParentProjectPathSccGetParentProjectPath

Le Visual StudioVisual Studio IDE crée presque toujours un dossier SUR lors de l’ajout d’une solution au contrôle de code source.The Visual StudioVisual Studio IDE almost always creates an SUR folder when adding a solution to source control. Plus précisément, il le fait dans les cas suivants :Specifically, it does so in the following cases:

  • Le projet est un partage de fichiers projet Web.The project is a file share Web project.

  • Il existe des lecteurs différents pour le projet et le fichier solution.There are different drives for the project and the solution file.

  • Il existe des partages différents pour le projet et le fichier solution.There are different shares for the project and the solution file.

  • Les projets ont été ajoutés séparément (dans une solution sous contrôle de code source).Projects were added separately (in a source-controlled solution).

    Dans Visual StudioVisual Studio il est recommandé que le nom du dossier SUR être le même que le nom de la solution sans l’extension.In Visual StudioVisual Studio it is suggested that the name for the SUR folder be the same as the solution name without the extension. Le tableau suivant récapitule le comportement dans les deux versions.The following table summarizes the behavior in the two versions.

FonctionnalitéFeature tSource contrôle plug-in API Version 1.1tSource Control Plug-in API Version 1.1 Contrôle de Version de l’API de plug-in 1.2 sourceSource Control Plug-in API Version 1.2
Ajouter la solution au contrôle de code sourceAdd solution to SCC SccInitialize()SccInitialize()

SccGetProjPath()SccGetProjPath()

SccGetProjPath()SccGetProjPath()

SccOpenProject()SccOpenProject()
SccInitialize()SccInitialize()

SccGetProjPath()SccGetProjPath()

SccCreateSubProject()SccCreateSubProject()

SccCreateSubProject()SccCreateSubProject()

SccOpenProject()SccOpenProject()
Ajouter un projet à la solution de contrôle de code sourceAdd project to source-controlled solution SccGetProjPath()SccGetProjPath()

OpenProject()OpenProject()
SccGetParentProjectPath()SccGetParentProjectPath()

SccOpenProject() Remarque : Visual Studio suppose qu’une solution est un enfant direct de le SUR.SccOpenProject() Note: Visual Studio assumes that a solution is a direct child of the SUR.

ExemplesExamples

Le tableau suivant répertorie les deux exemples.The following table lists two examples. Dans les deux cas, le Visual StudioVisual Studio utilisateur est invité à entrer un emplacement de destination pour la solution sous contrôle de code source jusqu'à ce que le user_choice est spécifié en tant que destination. Lorsque l’user_choice est spécifié, la solution et deux projets sont ajoutées sans solliciter l’utilisateur pour les destinations de contrôle de code source.In both cases, the Visual StudioVisual Studio user is prompted for a destination location for the solution under source control until the user_choice is specified as a destination.When the user_choice is specified, the solution and two projects are added without prompting the user for source control destinations.

Contient de la solutionSolution contains Sur des emplacements de disqueOn disk locations Structure de base de données par défautDatabase default structure
sln1.slnsln1.sln

Web1Web1

WEB2Web2
C:\Solutions\sln1C:\Solutions\sln1

C:\Inetpub\wwwroot\Web1C:\Inetpub\wwwroot\Web1

\\server\wwwroot$\Web2\\server\wwwroot$\web2
$/user_choice/sln1$/user_choice/sln1

$/user_choice /C/Web1$/user_choice/C/Web1

$/user_choice/Web2$/user_choice/Web2
sln1.slnsln1.sln

Web1Web1

Win1Win1
C:\Solutions\sln1C:\Solutions\sln1

D:\Inetpub\wwwroot\Web1D:\Inetpub\wwwroot\Web1

C:\solutions\sln1\Win1C:\solutions\sln1\Win1
$/user_choice/sln1$/user_choice/sln1

$/user_choice /D/web1$/user_choice/D/web1

$/user_choice /sln1/win1$/user_choice/sln1/win1

SUR dossiers et aux sous-dossiers sont créés indépendamment de si l’opération est annulée ou échoue en raison d’une erreur.The SUR folder and subfolders are created regardless of whether the operation is cancelled or fails due to an error. Ils ne sont pas supprimés automatiquement dans les conditions d’annuler ou d’erreur.They are not automatically removed in cancel or error conditions.

Visual StudioVisual Studio comportement de la Version 1.1 par défaut si le plug-in de contrôle de code source ne renvoie pas SCC_CAP_CREATESUBPROJECT et SCC_CAP_GETPARENTPROJECT indicateurs de capacité. defaults to Version 1.1 behavior if the source control plug-in does not return SCC_CAP_CREATESUBPROJECT and SCC_CAP_GETPARENTPROJECT capability flags. En outre, les utilisateurs de Visual StudioVisual Studio peut choisir de restaurer le comportement de la Version 1.1 en définissant la valeur de la clé suivante à DWORD : 00000001 :Additionally, users of Visual StudioVisual Studio can choose to revert to the Version 1.1 behavior by setting the value of the following key to dword:00000001:

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

Voir aussiSee Also

Nouveautés dans l’API de plug-in de contrôle de code source version 1.2What's New in the Source Control Plug-in API Version 1.2