0

我正在尝试使用要在 Assemblyinfo.cs 上使用的 MSBuild 检索 svn 修订号,但修订号返回 -1。该脚本如下所示,使用 slik subversion 1.8。我已经打开了 MSBuild 的诊断,并且 svnversion 确实返回 -1。最奇怪的是它在遗留项目上运行良好。

有任何想法吗?

干杯保罗

<Target Name="Version">
<XmlRead XPath="/Revolution/Major" XmlFileName="$(MSBuildProjectDirectory)\..\Version.xml">
  <Output TaskParameter="Value" PropertyName="Major" />
</XmlRead>
<XmlRead XPath="/Revolution/Minor" XmlFileName="$(MSBuildProjectDirectory)\..\Version.xml">
  <Output TaskParameter="Value" PropertyName="Minor" />
</XmlRead>
<SvnVersion LocalPath="$(MSBuildProjectDirectory)" ToolPath="$(ProgramFiles)\SlikSvn-1.6.9\bin">
  <Output TaskParameter="Revision" PropertyName="Revision" />
</SvnVersion>
<Message Text="Version: $(Major).$(Minor).$(Revision).0" />
<AssemblyInfo CodeLanguage="CS" OutputFile="Properties\AssemblyInfo.cs" AssemblyTitle="ITL.Fuel.Client" AssemblyDescription="ITL.Fuel.Client" AssemblyCompany="Ingenitech (NZ) Limited" AssemblyProduct="ITL.Fuel.Client" AssemblyCopyright="Copyright © Ingenitech (NZ) Limited 2008" ComVisible="false" Guid="51ec449f-f5fa-4506-b89f-77b743f02988" AssemblyVersion="$(Major).$(Minor).$(Revision).0" />

4

2 回答 2

0

对于SlikSvn-1.6.9\bin1.8 格式的工作副本和

使用 slik 颠覆 1.8

我至少看到两个问题

  • SlikSvn-1.6.9\bin 中的 svnversion 是否存在?
  • svnversion 1.6(如果存在)可以读取 1.8 格式的工作副本吗?(提示 - 不,它不能)
于 2013-07-18T10:25:40.217 回答
0

我使用这个任务。

<SvnVersion LocalPath="$(MSBuildProjectDirectory)" ToolPath="$(SVNToolPath)">
  <Output TaskParameter="Revision" PropertyName="MySubVersionRevision" />
</SvnVersion>

http://msbuildtasks.tigris.org/

和/或

https://github.com/loresoft/msbuildtasks有( FileUpdate 和 SvnVersion )任务。

完整的例子在这里:

使用 SVN Revision 标记 CCNET 中的构建

于 2013-07-18T13:44:25.163 回答