2008-10-17 16 views
9

Nous obtenons cette erreur dans Visual Studio 2005 et TFS très souvent. Est-ce que quelqu'un peut nous aider à identifier la cause de ce message?"Il semble y avoir une divergence entre le contrôle de la source de la solution ...."

Le message complet est:

There appears to be a discrepancy between the solution's source control information about some project(s) and the information in the project file(s).

To resolve this discrepancy it will be necessary to check out the project file(s) and update them. If the check out fails, however, and the solution is closed without saving, you will see this warning again the next time you open the solution.

En cliquant sur OK conduire finalement à une boîte de commande où il veut consulter une liste complète des fichiers de projet. Cependant, la fenêtre "Changer le contrôle de la source" n'affiche rien de mal, et tout enregistrer et simplement le réintégrer finit comme un message de type "Rien n'a été changé, défait tout".

Edit: Vous avez raison, @Adam, nous avons converti de VSS, mais nous sommes passés par une telle procédure pour le nettoyage des liaisons lorsque nous l'avons fait il y a un moment et tout était Peachy. L'erreur a commencé à apparaître récemment.

+0

je me suis dit la réponse à ce problème parce que l'un de mes collègues avaient un dossier qui n'a pas produit l'erreur. En regardant les différences entre eux: http://stackoverflow.com/questions/16616424/there-appears-to-be-a-discrepancy-between-the-solutions-source-control-informat – Denis

+0

** Note: ** Ceci n'est pas seulement lié à VS2005 - J'ai récemment eu ce problème dans ** VS2015/2017 ** avec un projet hérité. Il n'y avait aucun Visual Source Safe impliqué, en quelque sorte la liaison TFS a été brisée et devait être réparée. J'ai été capable de résoudre le problème de cette façon: Extraire toute la solution, supprimer les liaisons TFS, tout enregistrer, puis ré-ouvrir et appliquer les liaisons TFS était la solution dans mon cas. – Matt

Répondre

7

Vous semblez que vous avez déplacé le projet de VSS vers TFS, et le fichier de solution d'origine est toujours lié à VSS - vous devez le relier à TFS.

Here are the steps vous devrez faire pour résoudre ce problème. J'apporterais un extrait ici, mais il semble dépendre de plusieurs facteurs et n'est pas trivial.

Alternativement, voici un fil qui touche project binding/unbinding qui pourrait s'appliquer si ce n'est pas le cas.

-Adam

0

Nous avons 2 solutions et des centaines de projets.

I ont migré de VS 2008 SP1 à VS 2010 SP1 et recevait également l'erreur:

Il semble y avoir une divergence entre les informations de contrôle de code source de la solution. . .

Je voudrais ouvrir solution1, lui permettre de mettre à jour les projets, puis ouvrir solution2, seulement pour obtenir cette erreur à nouveau.

J'ai analysé les fichiers de solution et a trouvé ce qui suit:

Racine Cause:

solution1.sln et les fichiers solution2.sln sont incompatibles les uns avec les autres en ce qui concerne les liaisons de contrôle des sources du projet.

Exemple:

solution1.sln

SccProjectUniqueName6 = Project1\\Project1.csproj 
SccProjectName6 = \u0022$/Project1\u0022,\u0020HSBAAAAA 
SccLocalPath6 = Project1 

solution2.sln

SccProjectUniqueName6 = Project1\\Project1.csproj 
SccLocalPath6 = . 
SccProjectFilePathRelativizedFromConnection6 = Project1\\ 

Solution:

Je résolu ce problème en modifiant manuellement les fichiers de solution pour être cohérent dans bloc-notes. J'ai copié et collé les informations de contrôle de source de solution1.sln dans solution2.sln pour les projets qu'elles avaient en commun.

J'ai finalement écrit un petit utilitaire pour automatiser cela.

https://github.com/bentoo/MergeSolutionSourceControl