是否知道如何将LastChangeNumber
参数传递给MSBuild?
我正在尝试使用它:
<Exec Condition=" '$(LastChangeNumber)' != '' " Command=">\\server\destination\subversion_revision.txt echo subversion $(LastChangeNumber)" />
如果我从MSBuild中省略LastChangeNumber参数,则成功忽略该条件,如果我传入像/p:LastChangeNumber=foo
这样的bunk参数,则成功。但是,当我尝试这个时:
<msbuild>
<executable>C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe</executable>
<projectFile>MySolution.sln</projectFile>
<buildArgs>/noconsolelogger /p:Configuration=Debug /p:LastChangeNumber=$(LastChangeNumber) /v:diag</buildArgs>
<logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>
</msbuild>
我在CrusieControl.NET服务器日志中出错:
ThoughtWorks.CruiseControl.Core.Config.Preprocessor.EvaluationException: 参考未知符号 LastChangeNumber
答案 0 :(得分:3)
好吧,我找到了一种方法:
<Exec Command=">$(DeployDir)label.txt echo subversion $(CCNetLabel)" />
使用自定义贴标机:
<labeller type="assemblyVersionLabeller">
<major>2</major>
<minor>0</minor>
</labeller>