У нас есть решение, которое содержит 17 проектов. Решение имеет несколько конфигураций, таких как Debug, Release, Test, Publish и т.д.
Также проект команды имеет несколько определений сборки, каждое из которых специализировано для конфигурации. Мы используем сборку конфигурации Release для ночных сборок и сборку конфигурации Publish для публикации и развертывания. Таким образом, эти определения сборки собирают один и тот же исходный код. Но есть проблема...
Наша ночная сборка создает директории obj\Release для каждого проекта, а сборка publish - нет. Из-за этого сборка publish не создает серверный пакет publish.
Когда я посмотрел журналы сборки, я увидел различия, как показано ниже. Nightly build - Release configuration (для каждого проекта)
PrepareForBuild:
Creating directory "obj\Release\".
Publish build - Publish configuration (для каждого проекта)
_DeploymentUnpublishable:
Skipping unpublishable project.
Но я не мог понять, почему? Какой флаг управляет этим?
Мы используем TFS 2010, поэтому Team Build 2010.