Msbuild и SVN обновление - PullRequest
       12

Msbuild и SVN обновление

4 голосов
/ 29 октября 2009

Я хочу написать простую задачу, которая будет обновлять и фиксировать исходный код, созданный Nightly, в SVN. Я был на странице msbuildtasks.tigris.org, и скачал DLL, но я не знаю, как это написать. Не могли бы вы предоставить несколько основных образцов?

Ответы [ 2 ]

6 голосов
/ 03 ноября 2009

Вот пример (взят из MSBuild Community Tasks Build), который делает именно это:

<ItemGroup>
    <CommitFiles Include="www\index.html" />
    <CommitFiles Include="www\MSBuild.Community.Tasks.Nightly.zip" />
    <CommitFiles Include="www\MSBuild.Community.Tasks.Nightly.msi" />
 </ItemGroup>    

<SvnCommit Targets="@(CommitFiles)" Message="AutoBuild"
     Username="$(CommitUser)" Password="$(CommitPassword)">
    <Output TaskParameter="Revision" PropertyName="Revision" />
</SvnCommit>

Конечно, вам нужно импортировать задачи сообщества MSBUild, чтобы это работало:

<Import Project="MSBuild.Community.Tasks.Targets" />

В этом примере фиксируется только пара файлов, но, установив свойство Targets для задачи, можно легко получить больше.

0 голосов
/ 30 октября 2009

Мы используем nant, и, хотя в svn есть конкретные задачи, у вас есть больше контроля, используя задачу exec.

Если вы установите CLI-клиент svn на свой сервер сборки, вы сможете использовать задачу exec в MSBuild для запуска команды обновления svn. Вот фрагмент нашего скрипта сборки Nant, который, я уверен, вы могли бы легко адаптировать к скрипту MSBuild.

Надеюсь, это поможет.

...