Файл MSBuild VS SLN и файлы проекта - PullRequest
4 голосов
/ 30 января 2010

Я только начинаю смотреть на MSBuild и обдумывать всю идею. Я настроил CI-сервер с Hudson и хочу знать, как я «должен» иметь дело со скриптами сборки и файлами sln / proj.

Например, у меня есть существующее решение, в котором есть 10 проектов (один - веб-сайт, другой - проект веб-развертывания и проект установки MSI). Какой хороший способ борьбы со строительством этого?

  1. мне просто указать msbuild на файл sln?
  2. Должен ли я взять то, что находится в файле SLN, и создать другой, чтобы он указывал на разные файлы proj?
  3. Должен ли я взять код из всех файлов sln и proj и создать один собственный скрипт сборки?

Если я сделаю один из двух последних, нужно ли мне беспокоиться о поддержке двух наборов сценариев, то есть о том, что мой сценарий обновлен, а также файлы sln / proj?

Кроме того, как мне справиться с его сборкой при разработке на моем локальном компьютере? Должен ли я просто использовать CTRL SHIFT B для его сборки, а затем использовать только сценарий сборки для CI-сервера / развертываний?

Ответы [ 3 ]

3 голосов
/ 11 февраля 2010

Создайте скрипт сборки, который запускает задачу MSBuild. Направьте задачу MSbuild на свое решение или проект. Компиляция вашего исходного кода становится простой и является еще одной задачей. Ваш сценарий сборки, если вы можете сосредоточиться на больших и лучших вещах.

Ваш сервер CI запустит ваш скрипт сборки. Чтобы запустить сборку на локальном компьютере, включите файл .bat в свой проект. Файл .bat вызывает MSBuild для запуска сценария сборки и устанавливает параметры командной строки для таких вещей, как создание файла журнала. Затем вы можете дважды щелкнуть файл bat и посмотреть файл журнала, чтобы увидеть результаты. Вот пример:

%WINDIR%\Microsoft.NET\Framework\v3.5\MSBuild.exe build.xml /fileLogger /fileLoggerParameters:LogFile=MSBuildLog.txt
1 голос
/ 01 февраля 2010

Мне нравится подход, каждый проект имеет свой собственный файл сборки (будь то msbuild или NAnt и т. Д.), А затем есть основная сборка, которая собирает все проекты.Таким образом, вы сосредотачиваетесь на проекте (например, исправляя ошибку) и запускаете мастер-сборку перед регистрацией, а также master.build - это то, что запускается на сборочной машине.VS, сценарии сборки являются отдельными.Сценарии сборки будут предназначены только для сборки и запуска перед регистрацией.

Это мое мнение.Вы можете найти мою публикацию на начало работы с CI полезной ...

Удачи!

1 голос
/ 31 января 2010

Я гуглил и нашел сообщение Джеффа о "F5":

http://blog.codinghorror.com/the-f5-key-is-not-a-build-process/

Из этого и нескольких других постов я решил, что было бы лучше создать свой собственный скрипт MSBuild, отдельный от SLN и файлов проекта.

Скотт Хансельман ( Блог Скотта ) содержал хорошую ссылку о создании ярлыка в VS для запуска сценария сборки. запись в блоге о параллельном строительстве

Я предполагаю, что вам по-прежнему нужно нажимать клавишу F5 для отладки, и вы не можете избежать этого сценария большую часть времени (asp.net может подключаться к процессу, поэтому вам не нужно продолжать это делать).

Я собираюсь начать с просмотра файлов проекта и создания из них скрипта, а затем настроить его под себя.

Надеюсь, это поможет кому-то еще оглядываться в будущем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...