Поделиться через


Команда Destroy (управление версиями Team Foundation)

Команда tf destroy используется для уничтожения или безвозвратного удаления файлов системы управления версиями с Team Foundation (подсистема контроля версий).

Действие по уничтожению отменить нельзя. Нельзя уничтожать необходимые файлы. Иногда приходится производить чистку системы управления версиями. Например, из системы управления версиями необходимо окончательно удалить файлы, зараженные компьютерным вирусом.

Перед выполнением tf destroy без параметра /keephistory сначала рекомендуется удалить файлы, которые нужно уничтожить. Дополнительные сведения см. в разделе Удаление файлов и папок из системы управления версиями.

После удаления файлов желательно выполнить синхронизацию с хранилищем Team Foundation. В противном случае хранилище не будет синхронизировано с уничтоженными элементами.

Необходимые разрешения

Для использования команды destroy необходимо быть членом группы безопасности Администраторы Team Foundation. Дополнительные сведения см. в разделе Разрешения Team Foundation Server.

tf destroy [/keephistory] <itemspec1>[;<versionspec>][<itemspec2>...<itemspecN>] 
[/stopat:<versionspec>] [/preview] [/startcleanup] [/noprompt] [/silent] [/login:username,[password]] [/collection:TeamProjectCollectionUrl]]

Параметры

Аргумент

Описание

itemspec1 [itemspec2…itemspecN]

Указывает путь к файлу или папке на сервере для уничтожения. Для удаления нескольких элементов используйте несколько значений itemspec. Например, tf destroy $/TeamProject1 $/teamProject2 $/TeamProject3.

Локальные пути не поддерживаются.

versionspec

Предоставляет версию, например "C58", для параметров /keephistory или /stopat. Допустимыми значениями являются дата, версия или определенный набор изменений. Дополнительные сведения о том, как Team Foundation выполняет анализ спецификаций версий для определения элементов, находящихся в области его действия, см. в разделе Синтаксис командной строки (управление версиями).

username

Предоставляет значение для параметра /login. Можно задать значение для имени пользователя как ДОМЕН\имя_пользователя или как имя_пользователя.

TeamProjectCollectionUrl

URL-адрес коллекции командных проектов, содержащей файлы, которые необходимо уничтожить (например, http://myserver:8080/tfs/DefaultCollection).

Параметр

Описание

/keephistory

Необязательный. Указывает сохранять журнал файла, даже при уничтожении его содержимого. Не может указываться с параметром /preview.

/stopat

Необязательный. Используется только вместе с параметром /keephistory.

Указывает версию для файла и последующих файлов, для которых сохранен журнал.

Версией по умолчанию для /stopat является версия последнего возврата элемента.

Для указания элемента для параметра /stopat нельзя использовать метку или значения рабочей области versionspec.

/preview

Отображает в окне командной строки файлы, которые будут уничтожены. При выполнении tf destroy в режиме предварительного просмотра файлы фактически не уничтожаются.

ПримечаниеПримечание
В окне командной строки рядом с каждым файлом, который будет уничтожен, отображается слово "Уничтожен".Однако при использовании параметра /preview файл на самом деле уничтожен не будет.

/startcleanup

Вызывает принудительный запуск процесса очистки содержимого файла сразу же после завершения удаления содержимого. Если параметр /startcleanup не указан, процесс очистки будет произведен при обслуживании базы данных для всех файлов, на которые больше не ссылается Visual Studio Team Foundation Server. По умолчанию операция очистки выполняется по расписанию один раз в день.

/noprompt

/i

Указывает, что уничтожение файлов не является интерактивным. /i — это псевдоним для команды /noprompt.

/silent

Указывает, что при удалении файлов или папок выходные данные не записываются в окно командной строки.

/login

Задает имя пользователя и пароль для проверки подлинности пользователя с Team Foundation Server.

/collection

Указывает коллекцию командных проектов.

Заметки

При удалении файла системы управления версиями с помощью команды tf destroy Team Foundation Server получает запрос на удаление на уровне приложения и проверяет принадлежность пользователя к группе безопасности Администраторы Team Foundation. Если пользователь не является членом указанной группы, появится диалоговое окно с сообщением об отсутствии необходимых разрешений для выполнения операции.

В случае успеха команда выполняется. Команда удаляет все файловые ссылки, наборы отложенных изменений и ожидающие изменения. Позже произойдет очистка содержимого, на которое больше не ссылается Team Foundation Server, т.е. фактическое уничтожение файлов, являющееся полным удалением. При указании параметра /startcleanup содержимое будет очищено сразу после выполнения tf destroy.

При выполнении tf destroy без параметров /i и /preview пользователю будет предложено выбрать Yes или No для каждого значения filespec. В противном случае можно указать Yes to all. Если параметр /keephistory не указан, будет выведен интерактивный текстовый запрос с предупреждением об ожидающих изменениях (если они существуют). В запросе имеется ссылка на /preview для получения дополнительных сведений об изменениях. При указании параметра /keephistory необходимо будет выбрать Yes, No или All. При выборе Yes или All запустится процесс уничтожения с отображением в окне командной строки путей к элементам, удаляемым на сервере.

Destroyed: <serverItem1>
Destroyed: <serverItem2>
Destroyed: ...

При указании в качестве версии значения versionspec к отображаемым в окне командной строки путям к серверу добавятся идентификаторы удаления. Например, X123.

При использовании параметра /preview в командной строке отобразятся файлы, которые были бы уничтожены. Например, при вводе в командную строку tf destroy /preview $/Test1/MyProject/MyProject/Program.cs отобразится следующий текст.

Destroyed: $/Test1/MyProject/MyProject/Program.cs

Однако не самом деле файл не будет уничтожен, поскольку используется параметр /preview.

Дополнительные сведения о поиске программы командной строки if см. в разделе Команды служебной программы командной строки "tf".

Влияние параметра "/keephistory" на другие операции системы управления версиями

При указании параметра /keephistory для сохранения журнала уничтоженных файлов они обрабатываются как уничтоженные в следующих операциях Team Foundation (подсистема контроля версий).

  • **Изменение содержимого   **При попытке изменения содержимого уничтоженных файлов, например выполнении изменения или ветвления, появится системное сообщение об ошибке, уведомляющее об уничтожении содержимого.

  • **Ветвление, слияние или восстановление из набора изменений   **При попытке ветвления, слияния или восстановления удаленных элементов появится системное сообщение об ошибке, уведомляющее об уничтожении содержимого.

Уничтожение ранее удаленных элементов

При удалении элемента к имени файла добавится идентификатор удаления.

Примеры

Описание

В следующем примере окончательно удаляется файл "a.cs".

Код

C:\pi\ws1>tf destroy $/proj/pi/a.cs

Описание

В следующем примере для удаления папки aFolder в командной строке вводится следующее.

Код

C:\tf delete $/MyTeamProject/aFolder

Описание

Для удаления элемента aFolder в командной строке необходимо ввести следующее.

Код

tf destroy $/MyTeamProject/sFolder;x123

Где "x123" — идентификатор удаления.

См. также

Задачи

Удаление файлов, находящихся под контролем системы управления версиями

Основные понятия

Операции, доступные только с помощью командной строки (система управления версиями Team Foundation)

Другие ресурсы

Команды служебной программы командной строки "tf"