Невозможно запустить tf get
без рабочего пространства. Причина в том, что серверу необходимо знать соответствие между путями сервера и локальными путями.
Если вы работаете с большим количеством файлов, это не очень хорошая идея:
- Создать & Удалять новое рабочее пространство каждый раз, когда
- Или создать новую рабочую область (и затем никогда удалить)
причина этого заключается в том, что каждый раз, когда вы делаете Get
, сервер отслеживает, какие файлы, в которых версии были загружены на какое рабочее пространство. Если вы никогда не очистите эти рабочие пространства, таблица, в которой хранится эта информация, будет расти со временем.
Кроме того, если вы создаете &, удаляя рабочее пространство все время, сервер должен записать все эти строки, а затем удалить их, когда вы закончите. Это не нужно.
Вы действительно должны попробовать и повторно использовать одно и то же рабочее пространство каждый раз. Если вы это сделаете, сервер очень эффективен только при отправке файлов, которые были изменены с момента их последней загрузки.Даже если ваша сборка перемещается из одной ветки в другую, вы можете использовать tf get /remap
, что иногда более эффективно, если ветви имеют общие файлы.
Хотя это не решит вашу проблему, возможно скопировать файлы и загрузить файлы без места в рабочем месте.
Чтобы получить список файлов:
tf dir $/Product/Main/Project1 /R
Чтобы скачать файл:
tf view $/Product/Main/Project1/file.cs
С творческой пакетный файл, вы можете струна эти два вместе с командой FOR
. Однако я бы порекомендовал сначала попытаться решить проблему с рабочей областью, так как это предназначалось для использования TFS.
Хорошо, кажется, что путь наименьшего сопротивления - проверить код на стабильное рабочее пространство, а затем скопировать код оттуда в рабочие каталоги скрипта сборки. –
Вы задумывались над тем, чтобы сделать предложение визуальной студии alm stackexchange? http://area51.stackexchange.com/proposals/15894/visual-studio-alm?referrer=VS9uwfDzMKasH8mQCaDCxQ2 –
Это решение является более чистым, поскольку оно включает в себя только получение (никаких операций перемещения файла не требуется): http://stackoverflow.com/questions/10624031/how-to-perform-a-tfs-get-to-a-supply-or-current-directory-path-ignoring-works –