Как скачать TFS shelveset
Мне нужно скачать shelveset из TFS в локальную папку. Существуют ли какие-либо инструменты или надстройки для Visual Studio 2010 для загрузки полки
3 ответа
Если вам просто нужно получить файлы из набора полок в локальную папку, это нормальный процесс, который называется Unshelve. Он загружает файлы в вашу локальную папку.
Например, до отмены хранения в локальной папке было следующее:
- Файл 1
- Файл 2
У полки есть:
- Файл 1 (изменен)
- Файл 3 (создан)
После небрежного будет:
- Файл 1 (обновлен)
- Файл 2
- Файл 3 (добавлено)
Если вам нужно, чтобы в папке рабочей области были только файлы из набора полок, без чего-либо еще, одним из способов будет:
- Создайте новое рабочее пространство, но ничего не загружайте (т.е. не получайте последнюю версию)
- Это должно создать пустую локальную папку
- Отключить, используя Visual Studio или tf.exe
- У вас должны быть только файлы с полки
Вы можете найти больше информации об управлении полками здесь: приостановите свою работу и управляйте полками (MSDN)
Используя командную строку, мы можем получить дамп файлов:
set shelveset=<ShelvesetName>
set temppath=c:\temp\%shelveset%
md %temppath%
for /f "delims=;" %t in ('tf status /shelveset:%shelveset% /format:detailed ^| find ^"$^"') do tf view %t /shelveset:%shelveset% /noprompt > %temppath%\%~nxt
Обратите внимание, что это дает плоскую структуру и будет перезаписывать, если есть файлы с таким же именем.
- Закрыть Visual Studio
- Переименуйте папку, например, добавьте оригинал постфикса к имени папки, чтобы папка "SolutionX" стала "SolutionX - Original"
- Снова создайте папку "SolutionX", она будет пустой
- Open VS, unshelve shelvset1, "SolutionX" теперь будет иметь только файлы shelvset1
- Закрыть VS (это может не понадобиться)
- Переименуйте "SolutionX", например, в "SolutionX Shelveset1"
- Снова создайте папку "SolutionX", она будет пустой
- Откройте VS и отмените ожидающие изменения
- Отмена полки shelvset2, теперь у "SolutionX" будут только файлы shelvset1
- Закройте VS, переименуйте папку "SolutionX" в "SolutionX Shelveset2"
- Переименуйте папку "SolutionX - Original" в "SolutionX"
- Откройте VS и отмените ожидающие изменения
Используйте инструмент сравнения, чтобы сравнить "SolutionX Shelveset1" и "SolutionX Shelveset2"
Если вы обнаружите, что некоторые шаги не нужны, дайте мне знать, чтобы обновить это, я попробовал первый ответ, столкнулся с проблемами и должен был придумать это вместо этого.