Развертывание веб-приложения ASP.Net с CruiseControl.Net и SVN - избавление от папок .svn - PullRequest
1 голос
/ 07 мая 2010

У меня есть проект CruiseControl.Net, созданный для создания проекта ASP.Net, использующий задачу для извлечения последнего кода из системы контроля версий.

При успешной сборке я использую , чтобы скопировать сайт в папку развертывания. Моя проблема в том, что buildpublisher копирует все в папку назначения, включая каждую папку .svn и ее содержимое. Какой самый простой способ удалить папки .svn перед копированием в папку развертывания?

Ответы [ 3 ]

1 голос
/ 07 мая 2010

Вам нужно экспортировать из SVN для развертывания.Используйте svn exe с arg = update вместо обычной настройки arg = up

Это позволит экспортировать ваши файлы в каталог развертывания, удалив папки svn

0 голосов
/ 08 мая 2010

Простое решение (если оно работает для вас): добавьте шаг после блока задач перед издателем.

<exec>
  <executable>svn.exe</executable>
  <baseDirectory>c:\path_to_my_svn\</baseDirectory>
  <buildArgs>export MyWorkingCopyPath MyTemporaryPath </buildArgs>
</exec>

SVN скопирует рабочую копию MyWorkingCopyPath (толькоэлементы под управлением версиями) в папку назначения MyTevenPath .

И в издателе вы должны изменить источник как MyTevenPath .

., это всего лишь еще одна задача, которую нужно добавить.

0 голосов
/ 07 мая 2010

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

<ItemGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'">
<ExcludeFromBuild Include="$(SourceWebPhysicalPath)\obj\**\*.*" />
<ExcludeFromBuild Include="$(SourceWebPhysicalPath)\**\.svn\**\*.*" />
<ExcludeFromBuild Include="$(SourceWebPhysicalPath)\**\.svn\**\*" />
</ItemGroup>
...