MSBuild vs. Workflow - PullRequest
       32

MSBuild vs. Workflow

5 голосов
/ 17 сентября 2011

Мы несколько лет успешно используем MSBuild в нашей компании.У нас есть очень специальный .proj файл сборки для каждой спецификации сборки (выпуск, отладка и т. Д.), Который включает в себя множество операций:

  • Обфускация
  • Упаковка
  • Копирование выходных данных
  • Сжатие
  • И т.д.

Поскольку Microsoft включила новую функцию в TFS2010 для создания сборок с использованием Windows Workflow Foundation, мы думаемизменить на это.Как сказал Джим Лаб ( Program Manager для Team Foundation Server ) в статье 1020 *, вот его общее руководство о том, когда их следует использовать:

  • Если задача требует знания конкретных входных или выходных данных сборки, используйте MSBuild
  • Если задача, которую вам нужно выполнить при сборке в Visual Studio, используйте MSBuild
  • Если задача является чем-тоэто может произойти только при сборке на сервере сборки, используйте WF, если для этого не требуется знание конкретных входов / выходов сборки

Я еще не совсем уверен в этом и хотел бызнать свой собственный опыт, положительные моменты, недостатки и т. д. Ваше мнение было бы более ценно, если бы вы изменили DefaultTemplate.xaml для выполнения своих собственных операций.

1 Ответ

6 голосов
/ 17 сентября 2011

Мы осуществили переход от MSBuild к Workflow и перешли с TFS2008 на TFS2010.Некоторые примеры:

  1. Спецификации MSBuild отлично работают в Workflow, когда вы используете UpgradeTemplate.xaml.Это позволяет упростить миграцию TFS2008 на TFS2010
  2. MSBuild дает больше контроля командам разработчиков на то, как они хотят, чтобы их сборки работали.Участники могут легко изменить спецификации и проверить изменения.Рабочий процесс - это, скорее, BuildMaster .
  3. Изменения MSBuild можно быстро внести.Изменения рабочего процесса немного более хлопотно.Иногда быстрые изменения хороши, но они также отличают команду разработчиков от правительства .
  4. Рабочий процесс отделяет процесс шаблон от данных, используемых для управленияконкретная сборка.Эти шаблоны можно использовать повторно.

Общее впечатление: используйте MSBuild для построения небольших групп разработчиков.Используйте Workflow для линий производства зрелых продуктов.

...