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


TFSDeleteProject: удаление командных проектов

Можно удалить командный проект из Team Foundation Server, если проект больше не требуется, с помощью TFSDeleteProject. Кроме того, если существуют компоненты, оставшиеся неудаленными после неудачного создания командного проекта, для их удаления можно использовать TFSDeleteProject.

Важно!

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

Программа командной строки TFSDeleteProject находится в каталоге Диск:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE на любом клиентском компьютере, на котором работает Сред. Командный обозреватель. 

Примечание

Даже если вход в систему выполнен с разрешениями администратора, чтобы выполнить эту функцию на сервере с операционной системой Windows Server 2008, необходимо открыть окно командной строки с повышенными привилегиями.Чтобы открыть окно командной строки с повышенными привилегиями, нажмите кнопку Пуск, щелкните правой кнопкой мыши пункт Командная строка и выберите команду Запуск от имени администратора.Дополнительные сведения см. на веб-сайте корпорации Майкрософт: User Access Control.

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

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

TFSDeleteproject [/q] [/force] [/excludewss] /collection:URL TeamProjectName

Параметры

Параметр

Описание

/q

Необязательный. Использование тихого режима. У пользователя не запрашивается подтверждение.

/force

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

/excludewss

Необязательный. Указывает не удалять сайт SharePoint, связанный с этим командным проектом. Задайте этот параметр для обслуживания существующего сайта таким образом, чтобы другие командные проекты могли продолжать его использовать.

/collection:URL

Обязательный. Задает универсальный код ресурса (URI) коллекции командных проектов. Необходимо использовать следующий формат URI: http://ИмяСервера:Порт/ИмяВиртуальногоКаталога/ИмяКоллекции

Если не указан используемый виртуальный каталог, необходимо использовать следующий формат для универсального кода ресурса (URI):

http://ИмяСервера:Порт/ИмяКоллекции.

TeamProjectName

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

Заметки

При создании командного проекта Team Foundation Server создает объекты данных на сервере, на котором размещается Team Foundation Server и который может создать объекты данных на сервере, размещающем Продукты SharePoint, и на сервере, на котором размещены службы отчетов SQL Server. При удалении командного проекта отчеты автоматически удаляются из службы отчетов SQL Server.

При удалении командного проекта можно выбрать, удалить ли объекты, созданные для поддержки веб-сайта SharePoint. Однако ошибки могут помешать Team Foundation Server создать или удалить все эти объекты. Для решения этих проблем в следующих разделах приведены сведения общего характера, ссылки на другие ресурсы и конкретные действия, которые помогут определить причину проблемы, устранить проблему и при необходимости удалить объекты данных, которые остались после запуска TFSDeleteProject.

  • Процесс TFSDeleteProject

  • Данные, которые могут остаться неудаленными

  • Проверьте, удалены ли компоненты командного проекта

  • Удаление оставшихся компонентов после частичного удаления проекта

  • Увеличение периода времени ожидания

Процесс TFSDeleteProject

При использовании средства командной строки TFSDeleteProject сначала удаляются данные проекта, а затем веб-сайты проекта.

Этап 1. TFSDeleteProject удаляет данные проекта

На первом этапе TFSDeleteProject автоматически выполняет следующие действия для удаления данных командного проекта:

  1. TFSDeleteProject создает склад всех компонентов, являющихся кандидатами на удаление. Сюда относятся компоненты, интегрированные с Менеджер тестирования, Team Foundation Build и Team Foundation (подсистема контроля версий).

  2. TFSDeleteProject удаляет компонент, который отображает узел проекта в Сред. Командный обозреватель.

  3. TFSDeleteProject помечает сведения управления версиями для удаления, но не удаляет эти сведения немедленно. Эти сведения включают все ветви управления версиями в указанном проекте, но не включают другие ветви вне этого проекта.

    • Если в проекте имеется как родительская, так и дочерняя ветвь, то TFSDeleteProject помечает обе ветви для удаления.

    • Если родительская и дочерняя ветви находятся в разных проектах, TFSDeleteProject помечает только указанную ветвь.

    • Если другой проект является ответвлением указанного проекта, то TFSDeleteProject помечает только указанный проект. При удалении указанного проекта проект ветви становится потерянным.

  4. TFSDeleteProject немедленно удаляет данные построения, включая сведения и базовые данные, определения построений, агенты построения и результаты тестов, связанные с командным проектом. Средство не удаляет места размещения построения. Не нужно удалять папку размещения построений старого командного проекта перед созданием командного проекта, использующего ту же папку размещения построений.

    Если указанный проект содержит большой объем данных построения, удаление может не завершиться в течение периода ожидания. Чтобы решить эту проблему, обратитесь к разделу Увеличение времени ожидания и затем запустите TFSDeleteProject.

  5. TFSDeleteProject немедленно удаляет рабочие элементы и поля рабочих элементов, принадлежащих указанному проекту, а также удаляет все метаданные, не являющиеся общими.

    Если указанный проект содержит большой объем данных рабочих элементов, удаление может не завершиться в течение периода ожидания. Чтобы решить эту проблему, обратитесь к разделу Увеличение времени ожидания и затем запустите TFSDeleteProject.

Этап 2. TFSDeleteProject удаляет веб-сайты проекта

На втором этапе TFSDeleteProject удаляет следующие данные:

Важно!

Эти действия могут занять много времени, и в течение этого времени производительность сервера может снизиться.

  • TFSDeleteProject использует интерфейсы API служб отчетов для удаления отчетов на сервере, на котором размещаются службы отчетов.

  • TFSDeleteProject удаляет веб-сайт портала проекта с сервера, на котором расположен Продукты SharePoint. Это действие выполняется только в том случае, если проект является владельцем сайта и удаление сайта не исключено из командной строки. (учитывая, что несколько проектов могут указывать на один сайт, но только один из них может быть владельцем, когда отчеты и панели мониторинга используются этим проектом по умолчанию).

    Примечание

    До удаления командного проекта можно подтвердить, что службы отчетов и Продукты SharePoint используют правильные URL-адреса проекта, путем проверки параметров портала.Дополнительные сведения см. в разделе Добавление портала командного проекта.

Если TFSDeleteProject успешно удаляет все приведенные выше элементы данных, то возвращается сообщение Готово. Чтобы проверить этот результат, см. раздел Проверка удаления компонентов командного проекта.

Если один или несколько компонентов не удаляются, можно повторно запустить TFSProjectDelete с помощью параметра /force, чтобы продолжить процесс удаления, даже если не удается удалить все элементы данных. С этим параметром TFSDeleteProject пропускает компонент, который не удается, возвращает сообщение об ошибке, удаляет следующий компонент и оставляет метаданные командного проекта и параметры безопасности без изменений.

Данные, которые могут остаться неудаленными

Следующие данные могут оставаться в развертывании после успешного завершения TFSDeleteProject:

  • Данные командного проекта в кубе. Данные командного проекта остаются в кубе до тех пор, пока куб не будет перестроен, и в этот момент служба контроллера хранилища удаляет все исторические данные построения, которое было удалено из баз данных Team Foundation.

  • Построение удаленных файлов и папок. Построенные двоичные файлы, построенные файлы журналов и файлы журналов, содержащие результаты тестирования, публикуются во время процесса построения. Расположения этих файлов не удаляются. Эти файлы можно удалить только вручную.

  • Общий рабочий элемент метаданных отслеживания. TFSDeleteProject не удаляет метаданные для отслеживания рабочих элементов, совместно используемых командными проектами.

  • Наборы отложенных изменений системы управления версиями с общим кодом. Наборы отложенных изменений системы управления версиями не удаляются, если в наборе отложенных изменений есть код из нескольких командных проектов.

Проверка удаления проекта

Можно проверить успешность удаления проекта, подтверждающее, что узел командного проекта больше не отображается в Сред. Командный обозреватель и что его веб-сайт портала проекта и папки отчетов больше не существуют.

Чтобы убедиться, что командный проект был успешно удален, выполните следующие действия.

  1. Откройте Сред. Командный обозреватель и убедитесь, что проект не отображается как узел проекта.

  2. Откройте Internet Explorer и введите URL-адрес веб-сайта портала проекта. Убедитесь, что узел больше не существует.

  3. В поле адреса Internet Explorer введите URL-адрес веб-сайта служб отчетов, используя один из следующих форматов URL-адресов:

    • http://службы_отчетов/Reports

    • **http://службы_отчетов/Reports_**экземпляр_TFS

  4. В диспетчере отчетов нажмите Показать подробности.

  5. Убедитесь, что папки удаленного командного проекта больше не отображаются. Выберите корневую папку TfsReports, а затем выберите указанную папку для коллекции командных проектов. Папки с именем удаленного проекта быть больше не должно.

  6. Если остаются отчеты или веб-сайт, см. следующую процедуру.

Удаление оставшихся компонентов после частичного удаления проекта

Если веб-сайт портала проекта и папка отчетов остаются после удаления командного проекта, удалите этот сайт и папку вручную.

Ручное удаление отчетов и веб-сайта портала проекта удаленного командного проекта

  1. Выполните вход на сервер, на котором размещены службы отчетов для удаленного командного проекта.

  2. Откройте Internet Explorer и в поле адреса введите URL-адрес веб-сайта службы отчетов, используя один из следующих форматов URL-адресов:

    • https://localhost/Reports

    • **https://localhost/Reports_**экземпляр_TFS

  3. В диспетчере отчетов нажмите Показать подробности.

  4. Выберите корневую папку TfsReports, а затем выберите указанную папку для коллекции командных проектов.

  5. Установите флажок для командного проекта, который был удален.

  6. Нажмите кнопку Удалить.

  7. Нажмите кнопку ОК для подтверждения удаления папки отчетов для командного проекта.

  8. Сведения об удалении веб-сайта портала проекта удаленного командного проекта см. на следующей странице веб-сайта Microsoft: Практическое руководство. Создание, изменение и удаление сайтов Windows SharePoint Services https://go.microsoft.com/fwlink/?LinkId=131660.

Увеличение периода времени ожидания

По умолчанию каждый вызов веб-службы, выданный командой TFSDeleteProject для удаления компонента, должен быть выполнен в течение 10 минут. Если имеется шесть вызовов, то процесс может занять до часа. Если требуется удалить командный проект, который связан с большим объемом данных, можно временно увеличить этот период ожидания.

Примечание

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

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

Для выполнения этих процедур необходимо обладать правами администратора Windows на сервере уровня приложений.

Важно!

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

Чтобы увеличить время ожидания для команды TFSDeleteProject

  1. Войдите на сервер уровня приложений.

  2. В меню Пуск выберите Выполнить, введите "regedit" и нажмите кнопку ОК.

  3. В области обозревателя разверните раздел HKEY_ LOCAL_MACHINE:

    • Если на сервере работает 32-разрядная операционная система, разверните: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\TeamFoundation\RequestSettings.

    • Если на сервере работает 64-разрядная операционная система, разверните: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432\Microsoft\VisualStudio\10.0\TeamFoundation\RequestSettings.

  4. Если ключ TeamFoundation\RequestSettings не существует, для его создания выполните следующие действия:

    1. Щелкните правой кнопкой мыши ключ TeamFoundation, наведите указатель мыши на пункт Создать и выберите Раздел.

    2. Назовите этот ключ RequestSettings.

    3. Щелкните правой кнопкой мыши ключ RequestSettings, наведите указатель мыши на пункт Создать и нажмите Значение DWORD.

    4. Назовите это новое значение DefaultTimeout.

  5. Щелкните правой кнопкой мыши ключ DefaultTimeout и выберите команду Изменить.

  6. В поле Значение введите период ожидания в миллисекундах и выберите десятичная.

    Например, чтобы увеличить время ожидания до 30 минут, введите 1800000. Чтобы изменить время ожидания до 10 минут, введите 600000.

  7. Нажмите кнопку ОК.

  8. В меню Файл выберите пункт Выход.

Пример

Следующая команда удаляет все компоненты, связанные с командным проектом StoreFront на сервере AdventureWorks1 Team Foundation Server, в коллекции проекта Collection1 и из Сред. Командный обозреватель.

TFSDeleteProject /force /collection:http://AdventureWorks1:8080/Collection1 StoreFront

См. также

Задачи

Подключение и доступ к командным проектам на сервере Team Foundation Server

Создание командного проекта

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

Управление разрешениями

Настройка ресурсов для поддержки командных проектов

Использование средств командной строки Team Foundation Server