Как TFPT.exe находит рабочее пространство для работы?
При использовании tfpt из команды я получаю сообщение об ошибке:
PS D:\Main Line> tfpt uu /noget
Unable to determine the workspace.
Здесь я пытаюсь использовать команду Undo Unchanged, но я видел эту ошибку и с другими командами. Путь, на котором я нахожусь, - это точный путь, который отображается в моем рабочем пространстве TFS. Я также пробовал это, что не работает.
PS D:\Main Line> tfpt uu /recursive /noget 'D:\Main Line'
Unable to determine the workspace.
Я думал, что это просто использует текущий путь, чтобы понять это, но я не могу заставить его работать правильно. Кто-нибудь знает, как это работает?
Ответы
Ответ 1
Я столкнулся с той же самой проблемой, я нашел ответ в нижней части страницы в одном из файлов справки, который шел с инструментами власти. (TFPTCommandLineTool.mht)
ошибки
Ошибка TFPT: невозможно определить рабочее пространство
При запуске tfpt с помощью команды, которая работает с системой контроля версий, вы можете получить одну из ошибок:
Unable to determine the workspace
Unable to determine the source control server
Решения:
- Запустите
tfpt.exe
из каталога, который уже сопоставлен с источником управления Team Foundation. - Обновите локальный кеш рабочей области с помощью команды
tf workspaces
. Инструмент tf.exe
находится в Common7\IDE
в папке установки Visual Studio. Если вы запускаете командную строку Visual Studio, вы можете запустить следующую команду (которая зависит от ваших версий TFS/VisualStudio - вам следует использовать версию, соответствующую используемой вами версии TFPT, например, если у вас TFPT для VS2015, используйте TF из командной строки VS2015): - VS 2008-2013/TFS 2008:
-
tf workspaces/s:serverURL
- VS 2010-2013/TFS 2010 (и, возможно, более поздние версии):
-
tf workspaces/collection:collectionURL
- VS 2008/TFS 2010 (и, возможно, более поздние версии):
-
tf workspaces/s:collectionURL
- Если вы недавно установили Visual Studio 2012, возможно, вам придется подключить его к тому же серверу/коллекции TFS, которые вы использовали в Visual Studio 2010.
Ответ 2
При использовании tf workspaces /s:serverURL
убедитесь, что вы используете правильный tf.exe
!
У меня была такая же проблема, и я застрял, потому что использовал tf.exe
из:
\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE
а не от:
\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE
Ответ 3
Я пробовал все это, и все же у меня такая же ошибка. Ошибка является достаточно общей, чтобы представлять несколько проблем, я думаю..
переустановка TFPT из
https://visualstudiogallery.msdn.microsoft.com/f017b10c-02b4-4d6d-9845-58a06545627f
исправил проблему для меня.
Ответ 4
На самом деле, хотя я считаю, что в некоторых случаях эти обходные пути могут исправить ситуацию, они не работают во всех случаях. И я сильно подозреваю, что в конечном итоге это указывает на то, что можно считать ошибкой где-то в коде PowerTools. Причина, по которой я говорю, заключается в том, что команда tf workspace не имеет проблем с обнаружением рабочей области на моей машине с консоли управления VS, но из той же самой консоли со всей информацией о том же пути информация TFPT не может обнаружить ее на моем круге что я пытаюсь. Я просто получил этот ноутбук и установил VS 2010, 2012 и 2013, а также соответствующие установки Power Tools и указал на набор проектов, которые в настоящее время охватывают несколько экземпляров TFS 2010 и TFS 2012. Из-за этого отношения "многие-ко-многим" я подозреваю, что где-то есть некорректная ссылка на сборку, некоторая комбинация факторов, GAC, Path, переменные среды, VS-установки, репозитории TFS. В каждой версии VS я попытался запустить исполняемый файл TFPT 2010 из команды VS 2010 и т.д. С оставшимися версиями и попробовал указанные выше обновления кэша рабочего пространства во всех их формах... ничего. Но, используя тот же проект, я подключился с старого сервера с VS 2010 и TFPT 2010 и отлично выполнил ту же команду. Поэтому я думаю, что это связано с тем, что работает в вашей системе, и в будущем я буду гораздо более скептически относиться к запуску разных версий бок о бок.
Ответ 5
Для пользователей Visual Studio 2017
У меня была такая же проблема при попытке запустить командную строку tfpt
на новой машине с установленными VS215 и VS2017. Последняя версия инструмента tfpt
на момент написания этой статьи - TFS Power Tools 2015. Это означает, что отображение локальной рабочей области должно быть загружено в VS2015, прежде чем инструмент tfpt
сможет найти рабочую область.
Так как моя команда использует VS2017, я сделал отображение рабочей области только в этой версии. Когда я открыл командную строку разработчика VS2017 для использования этого инструмента, я получил сообщение "Невозможно определить рабочее пространство".
Чтобы решить эту проблему, я открыл VS2015 и подключил Team Explorer к серверу TFS. Он сразу распознает отображение рабочей области, созданное в рамках VS2017. После этого утилита tfpt
корректно работает под командными подсказками VS2015 и VS2017.