Domanda

Voglio scrivere una semplice attività che aggiornerà e commetterà il codice sorgente che è stato creato su Nightly in SVN. Ero sulla pagina msbuildtasks.tigris.org e ho scaricato la DLL ma non ho idea di come scriverla. Potresti fornire alcuni esempi di base?

È stato utile?

Soluzione

Ecco un esempio (tratto dalla build delle attività della community di MSBuild) che fa esattamente questo:

<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>

Ovviamente è necessario importare le attività della Community MSBUild affinché funzioni:

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

In questo esempio viene eseguito solo il commit di un paio di file, ma impostando la proprietà Targets sull'attività potrebbe essere facilmente maggiore.

Altri suggerimenti

Usiamo nant e mentre ci sono attività specifiche svn hai molto più controllo usando un'attività exec.

Se si installa l'interfaccia della riga di comando del client svn sul proprio server di compilazione, sarà possibile utilizzare l'attività exec in MSBuild per eseguire il comando svn update. Ecco uno snippet del nostro script di build Nant che sono sicuro che potresti facilmente adattare a uno script di MSBuild.

                                                             

Spero che questo aiuti.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top