#tfs #msbuild
#tfs #msbuild
Вопрос:
Я хотел бы услышать о лучших практиках или узнать, как люди выполняют следующую задачу в TFS 2008.
Я намереваюсь использовать TFS для создания и хранения проектов веб-приложений. Иногда эти проекты могут содержать 100 файлов (*.cs, *.acsx и т.д.)
В течение срока службы веб-сайта будет возникать небольшая ошибка, приводящая, скажем, к изменению таблицы стилей и изменению default.aspx.cs, например.
При проверке этих изменений в TFS будет запущена автоматическая сборка (отлично!), однако для развертывания изменений на целевой рабочей машине мне нужно только развернуть, например:
- style.css
- default.asx
- MyWebApplications.dll
Итак, мой вопрос в том, можно ли настроить MSBuild для генерации «пакета кода» только из файлов, которые требуют развертывания на рабочем сервере, на основе набора изменений, которые вызывают повторную сборку?
Ответ №1:
Вероятно, вам будет нелегко заставить MSBuild выполнять это самостоятельно, но идеальным инструментом для использования в вашей ситуации является Web Deployment Tool, он же MSDeploy. С помощью этого инструмента вы можете указать ему развернуть изменения на целевом веб-сайте. Программа определит только измененные файлы, а затем просто развернет их. Также вы можете выполнить настройку развертывания и целую кучу других вещей. Это действительно отличный инструмент.
Комментарии:
1. Спасибо, Сайед, я быстро просмотрел и думаю, что вы правы в том, что этот инструмент можно использовать. Однако я все еще думаю, что реализация может быть довольно сложной для достижения того, что я пытаюсь сделать. Похоже, что инструмент работает путем сравнения веб-сайта для определения различий в файлах. В моем случае у меня не будет доступа к рабочей платформе и я не смогу выполнить сравнение. Мне нужно было бы передать файлы набора изменений в средство MSDEPLOY, чтобы определить, какие библиотеки DLL и файлы требуются в пакете кода.