web-dev-qa-db-fra.com

Comment résoudre le message d'erreur "Une erreur s'est produite lors de l'enregistrement de ce projet avec le contrôle de source" lors du chargement d'un projet extrait d'un serveur TFS

le message d'erreur complet est:

"Le projet 'mon.projet.nom' est sous contrôle de source. Une erreur s'est produite lors de l'enregistrement de ce projet avec le contrôle de source. Il est recommandé de ne pas modifier ce projet."

Il semble que je puisse faire disparaître le message d'erreur et charger correctement le projet en ouvrant le fichier csproj, puis supprimer tous les nœuds dont le nom commence par "scc" - cependant, je dois confirmer que je souhaite utiliser la solution Paramètres de contrôle de source chaque fois que j'ouvre la solution.

Aucune suggestion?

30
Joda

Au cas où quelqu'un d'autre aurait le même problème: nous avons fini par le résoudre en prenant une sauvegarde du projet, en supprimant le projet de la solution, en archivant la solution dans le contrôle de source sans ce dernier, puis en rajoutant le projet. 

Heureusement, c'était un nouveau petit projet, avec très peu d'histoire - je détesterais avoir à faire cela avec un grand vieux projet ...

J'essaierais probablement d'abord la suggestion de Tbergstedt, si je vous dirigeais.

0
Joda

Veuillez ouvrir le fichier * .csproj de votre projet puis remplacer les tags suivants:

<SccProjectName>SAK</SccProjectName>
<SccLocalPath>SAK</SccLocalPath>
<SccAuxPath>SAK</SccAuxPath>
<SccProvider>SAK</SccProvider>

Avec

<SccProjectName>
</SccProjectName>
<SccLocalPath>
</SccLocalPath>
<SccAuxPath>
</SccAuxPath>
<SccProvider>
</SccProvider>

Fermez la solution, fermez VS, rouvrez VS et votre problème sera résolu.

77
M.Mohammadi

Le problème concerne le *.csproj.user et si vous avez le contrôle de source avec le *.csproj.vspscc (dans VS2012). Supprimez les deux, fermez la solution, fermez VS, rouvrez VS à l’aide de la commande Exécuter en tant que (de préférence administrateur) et tout devrait bien se passer.

6
bleepzter

J'essayerais de supprimer les liaisons de contrôle de code source précédentes dans le fichier .csproj, puis de le relier à l'aide de Fichier-> Contrôle de code source-> Modifier le contrôle de code source ...

4

Dans VS2012, Outils -> Options -> Contrôle de la source -> Section de plug-in. Changer le plug-in de contrôle de source actuel.

Après avoir déplacé le projet de Mercurial à GiT, j'ai eu le même problème. Je change de "plug-in de contrôle de source actuel" de Mercucial à VisualHG (que je dois installer à partir d'extensions car je n'ai pas cette option au début).

3
Kambey

J'ai eu le problème quand quelqu'un d'autre a ajouté un projet à la solution et que j'ai eu la dernière solution. Je n'ai fait que redémarrer Visual Studio.

1
Thomas Koelle

Puisque rien de ce qui précède ne fonctionnait pour moi et que je rencontrais des problèmes avec les bibliothèques qui convenaient dans d’autres projets, il était raisonnable que je considère que c’était un problème de solution plutôt qu’un projet individuel.

Ce qui a fonctionné pour moi, c’est d’ouvrir le fichier de solution (.sln) dans le bloc-notes (en effectuant une sauvegarde en premier lieu pour des raisons de sécurité), et s’il existe une section:

GlobalSection(SourceCodeControl) = preSolution
 ...
EndGlobalSection

puis supprimez-le, enregistrez la solution et rouvrez-le. Problème résolu pour moi.

0
Brian Cryer