Div*_*ngh 12 msbuild msbuild-task
我只需要更改AssemblyInfo.cs文件的修订号.版本号的格式为Major.Minor.Build.Revision,例如1.4.6.0.
目前我使用FileUpdate任务(来自MSBuild社区任务项目)和以下正则表达式更改版本:
<FileUpdate Files="@(AssemblyResult)"
Regex='(\[\s*assembly:\s*AssemblyVersion\(\s*"[^\.]+\.[^\.]+)\.([^\.]+)(\.)([^\.]+)("\)\s*\])'
ReplacementText='[assembly: AssemblyVersion("$(AssemblyMajorNumber).$(AssemblyMinorNumber).$(AssemblyBuildNumber).$(Revision)")]' />
Run Code Online (Sandbox Code Playgroud)
现在我只需要更新版本号并保持major,minor和build不变.那么,有什么任务可以做到这一点吗?或者可以用正则表达式完成吗?那么正则表达式会是什么?
Wim*_*nen 16
这个怎么样:
<FileUpdate Files="Properties/AssemblyInfo.cs"
Regex="(\d+)\.(\d+)\.(\d+)\.(\d+)"
ReplacementText="$1.$2.$3.$(Revision)" />
Run Code Online (Sandbox Code Playgroud)
我使用以下目标来执行此操作:
<Target Name="UpdateAssemblyInfoVersion" DependsOnTargets="GetRevision">
<CreateItem Include="**\AssemblyInfo.vb">
<Output TaskParameter="Include" ItemName="AssemblyFiles"/>
</CreateItem>
<Time>
<Output TaskParameter="Year" PropertyName="Year" />
</Time>
<FileUpdate Files="@(AssemblyFiles)"
Multiline="true"
Singleline="false"
Regex="(AssemblyVersion|AssemblyFileVersionAttribute|AssemblyFileVersion)\("([0-9]+\.[0-9]+\.[0-9]+)(\.[0-9]+)?"\)"
ReplacementText="$1("$2.$(Revision)")" />
<FileUpdate Files="@(AssemblyFiles)"
Multiline="true"
Singleline="false"
Regex="AssemblyCompany\(".*"\)"
ReplacementText="AssemblyCompany("My Company")" />
<FileUpdate Files="@(AssemblyFiles)"
Multiline="true"
Singleline="false"
Regex="AssemblyCopyright\(".*"\)"
ReplacementText="AssemblyCopyright("Copyright © 2009-$(Year) My Company")" />
</Target>
Run Code Online (Sandbox Code Playgroud)
这将替换任何AssemblyInfo文件(在多个项目中)中的修订版(第4个数字).它查看AssemblyVersion AssemblyFileVersionAttribute和AssemblyFileVersion标记,并使用$(Revision)MSBuild属性作为数字(我有另一个名为GetRevision的目标,它从SVN获取并设置属性,因此这取决于该目标).正则表达式替换处理具有3或4位数的版本号(无论出于何种原因,我只有3个数组).
它还设置/覆盖公司和版权信息,并将其设置为"我的公司".对于版权,我很懒,所以它总是使用当年,所以我不必记得每年更新它(所以它说例如"Copyright(c)2009-2010 My Company").
此目标需要MSBuild社区任务扩展.
作为策略问题,检入SVN的所有内容都有.0作为最后一个数字,并且只有CI服务器在进行构建时更改此值.这使我们可以快速区分开发人员创建的构建(永远不允许发给客户)和CI服务器创建的"官方"构建.
| 归档时间: |
|
| 查看次数: |
8320 次 |
| 最近记录: |