#cruisecontrol.net #devenv #dbproj
#cruisecontrol.net #devenv #dbproj
Вопрос:
После обновления до VS2010 у нас есть несколько файлов .dbproj, которые вызывают проблемы в наших сборках CI. Они все равно ничего не делают, кроме как просто хранят файлы SQL, поэтому я бы хотел просто игнорировать их. Я запускаю CruiseControl.Подключаю и создаю свое решение с devenv.com . Есть ли у меня какой-нибудь способ сообщить сборке, что я хочу игнорировать эти проекты или все проекты .dbproj?
Ответ №1:
Один из способов сделать это — создать новую конфигурацию решения в Visual Studio. Перейдите в меню Debug, а затем Configuration Manager. Создайте новую конфигурацию, а затем исключите свои проекты .dbproj.
Затем используйте это имя конфигурации в командной строке devenv.com вместо ‘Debug’ или ‘Release’
Комментарии:
1. На самом деле, поддерживать другую конфигурацию только для сборки — это слишком обширно.
2. @Hertzel Обслуживание минимально. Мы делаем это в нескольких решениях для нашего текущего проекта. По умолчанию элементы, добавленные в одну конфигурацию, добавляются ко всем. Таким образом, нет никакой реальной работы, кроме начальной настройки.
3. два хороших момента, хотя я по-прежнему предпочитаю функцию исключения из сборки.
Ответ №2:
- Поскольку это просто проект контейнера файлов, вы могли бы просто исключить его из сборки
Debug
иRelease
- Используйте msbuild вместо devenv, и он будет поддерживать функцию «исключено из сборки» (я думаю, что devenv этого не делает)
(В некоторой степени) альтернативой было бы перевести проект в библиотеку классов (которая на самом деле ничего не создаст …)
Примером задачи MSBUILD может быть:
<msbuild>
<executable>C:WINDOWSMicrosoft.NETFrameworkv3.5MSBuild.exe</executable>
<workingDirectory>project_solution_path</workingDirectory>
<projectFile>project_solution_file</projectFile>
<buildArgs>/p:Configuration=Debug /p:VCBuildAdditionalOptions="/useenv" /v:diag /t:rebuild</buildArgs>
<timeout>300</timeout>
</msbuild>
HTH