Y a-t-il une solution lorsque TFPT est "incapable de déterminer l'espace de travail" et que le rafraîchissement du cache ne fonctionne pas?

j'ai du mal à obtenir TFPT.exe pour travailler, même après avoir essayé de rafraîchir le cache paramètres d'espace de travail par les conseils habituels sur l'internet. Voir ci-dessous pour un journal représentatif de ce que j'ai essayé et je vois. Est-ce que quelqu'un peut expliquer pourquoi "TF get" est capable de determiner l'espace de travail, mais "tfpt annotate" échoue?

C:tfsproj> set tfptcmd="C:Program Files (x86)Microsoft Team Foundation Server 2010 Power ToolsTFPT.exe"
C:tfsproj> set tfcmd="C:Program Files (x86)Microsoft Visual Studio   10.0Common7IDETF.exe"
C:tfsproj> %tfcmd% workspaces /s:http://tfs:8080/tfs/Apps
Collection: tfsApps
Workspace Owner          Computer Comment
--------- -------------- -------- ---------------------------------------------
DAVID     David_Zarlengo DAVID

C:tfsproj> %tfcmd% get /preview
C:tfsprojsrc:
Replacing Readme.txt

C:tfsproj> %tfptcmd% annotate srcReadme.txt
Unable to determine the workspace

lorsque je modifie L'espace de travail dans Visual Studio 2010, la grille "dossiers de travail" contient 3 lignes, dont l'une est " Active, $/Foo, C:tfsproj" par conséquent, je suppose que le dossier est mappé correctement.

cross-posté sur Team Foundation Server – Outils électriques & Add-ons

20
demandé sur davidzarlengo 2011-06-23 18:43:05

6 réponses

Cette suggestion de une discussion similaire sur les forums MSDN qui m'a aidé:

Vous devez vous assurer que vous êtes exécution des commandes à partir d'un mappé dossier , vous pouvez exécuter tf workfold pour voir si le dossier actuel est mappé ou pas (I. e dans votre cas, exécutez les commandes à partir de C:\Temp )

31
répondu Nikita G. 2017-06-13 16:51:19

j'ai eu cette même erreur et le problème était que lorsque j'ai lancé tfpt de la ligne de commande il se résolvait à la version 2008 des outils électriques au lieu de la version 2010.

exécuter tfpt sans arguments et dans l'aide qu'il vide, il vous dit quelle version il est.

15
répondu Scott Langham 2011-09-27 10:20:09

pour ceux dans vs2017: essayez de démarrer vs2015 (pas 2017), assurez-vous de vous connecter au serveur TFS dans vs2015, puis tfpt a fonctionné très bien.

mais note: on dirait que les commandes TF powertools sont intégrées dans le nouvel outillage tfs, donc tfpt n'est pas vraiment une chose en 2017. Voir la réponse de Daniel Mann ici pour plus d'informations et des liens utiles: tfpt.exe on Visual Studio 2017

6
répondu JohnnyFun 2018-01-17 06:54:29

après un regard neuf, il s'avère que 'C:\tfsproj" est un lien symbolique vers un répertoire "C:\some\nested\path". Exécuter la commande TFPT à partir du chemin imbriqué fonctionne comme prévu.

fait intéressant, L'espace de travail de TFS a été mappé sur le chemin imbriqué, il est donc surprenant que les commandes TF (par exemple TF get /preview) aient pu fonctionner correctement à partir du chemin alias.

je soupçonne que TFPT ne suit pas les liens symboliques du répertoire NTFS correctement lors de la détermination de l'espace de travail.

4
répondu davidzarlengo 2011-06-28 23:26:06

tant Que vous êtes dans le répertoire de travail, tfpt annoter devrait fonctionner. Si vous obtenez le message "Impossible de déterminer l'espace de travail", alors c'est un problème de mise en cache.

si, comme vous l'avez dit, vous avez lancé TF workspaces /s:serverURL et que cela ne se résout toujours pas, j'essaierais de créer un nouvel espace de travail et de le tester là-bas. Si cela fonctionne alors quelque chose de mal avec l'espace de travail évidemment et je voudrais juste l'effacer et utiliser le nouveau. Si les deux échouent, alors de bien sûr il y a un gros problème mais c'est la façon dont je l'approche.

1
répondu Mike Veigel 2011-06-24 20:11:20

Dans mon cas, voici comment je suis arrivé à ce problème (message d'erreur "Impossible de déterminer l'espace de travail" ), et comment je l'ai résolu.

arrivée:

j'avais un code. Le développement est passé de la branche dans laquelle j'ai travaillé (appelons-le Branch1 ) à Branch2 . J'ai dû continuer sous Branch2 . J'ai mis de côté les changements, j'ai redessiné mon développement. dossier à Branch2 , ouvert invite de commande de développeur pour VS2012 et a couru la commande suivante

tfpt unshelve /migrate /source:"$chemin/chemin/Branch1" /target:"$chemin/chemin/(Sesc) 2" "Shelveset Nom"

J'ai le" incapable..."message

Solution:

dans mon cas, le problème était que lorsque j'ai ouvert l'invite de commande, son fonctionnement répertoire était c:\program files\...\...Visual Studio 11... . Il a fonctionné (migration de shelveset) quand j'ai changé le répertoire de travail au répertoire de la branche elle-même: c:\MyBranchFolder

0
répondu T.S. 2017-05-16 21:21:55