Lia*_*son 20 svn cruisecontrol.net version-control assemblyinfo
我有一个使用CruiseControl的自动构建系统.我正在使用SvnRevisionLabeller来获取要使用的版本字符串.使用此字符串,我可以使用nant来更新AssemblyInfo.cs,因此在构建时它具有正确的构建字符串.我也可以使用此CC标签来标记subversion存储库.
所以一切都是对齐的
--CCNet Build标签
- 可执行(装配信息)
- 版本控制(subverson标签)
现在我遇到问题的是,如果我想尝试从存储库重建旧图像.由于AssemblyInfo.cs不受版本控制,而是生成文件,因此当我现在尝试构建时,版本信息将与使用CruiseControl构建此版本的存储库时的版本信息不同.我希望能够生成完全相同的图像,无论它是在CC构建期间构建还是在以后从Subversion签出时构建.
我知道它通常不推荐,但是我应该在每次构建之后签入assemblyInfo.cs文件,这样当我从svn签出后随后构建时,将使用正确的版本信息吗?
谢谢,利亚姆
或者根本不对AssemblyInfo.cs进行版本化,或者将它们的"开发者版本"放入存储库并让CruiseControl.Net在构建之后恢复它们(我会在以后执行以便在开发人员工作站上进行的构建很容易从从CruiseControl.Net下载的"官方"版本.
至于稍后再生相同的构建标签 - 您必须通过手动调用MSBuild/NAnt来进行重建,只需传递给它CCNetLabel设置为适当的值,您将获得与从CruiseControl调用的构建生成的相同的程序集版本.Net(MSBuild:/p:CCNetLabel=1.4.2.333
,NAnt :) -D:CCNetLabel=1.4.2.333
.
我使用CommonAssemblyInfo.cs文件,我在每个项目中添加一个链接.
我在这个文件中唯一的属性是AssemblyFileVersion,CC.Net/Msbuild每次构建都会更新版本.
确保包含CommonAssemblyInfo.cs的任何项目在AssemblyInfo.cs中没有重复的属性.
如果您查看CC.Net源代码,您将看到他们是如何构建它们的.
归档时间: |
|
查看次数: |
6839 次 |
最近记录: |