动态版本控制
我有一种情况,我希望版本控制在构建时是动态的。
版本模式: ...
但我已经读过在编译时重新分析属性中使用的String值的位置。
有关如何完成动态版本控制的任何建议吗?
理想情况:
我知道它不会工作,但应该得到交叉点。
您可以使用MsbuildCommunityTasks生成内部版本号,并在预构建时自定义程序集文件版本。
-
在MsbuildCommunityTasks下载zip
-
解压缩到文件夹[SolutionFolder] \ MsBuildExtensions \ MSBuildCommunityTasks
-
在Microsoft.CSharp.Targets导入之后,在项目(csproj)上添加以下示例。
$(MSBuildThisFileDirectory)..\MsBuildExtensions\MSBuildCommunityTasks Properties
-
从AssemblyInfo.cs中擦除AssemblyFileVersion属性。 它将在构建时生成。
-
您将在构建时看到控制台上打印的版本号。 在AfterBuild目标上删除生成的文件,以保持源代码管理清洁。
BeforeBuild:
Building 2013.01.14.1016 …创建了AssemblyInfo文件“Properties \ AssemblyVersionInfo.cs”。
(……)
AfterBuild:
删除文件“Properties \ AssemblyVersionInfo.cs”。
-
如果您希望对具有较少msbuild代码的许多项目执行此操作,则需要创建自定义构建脚本以包装您的解决方案。