我有一个使用 CruiseControl 的自动构建系统。我正在使用 SvnRevisionLabeller 来获取要使用的版本字符串。有了这个字符串,我可以使用 nant 更新 AssemblyInfo.cs,这样当我构建时它就有正确的构建字符串。我还可以使用此 CC 标签来标记 subversion 存储库。
所以一切都对齐了
- CCNet 构建标签
- 可执行文件(程序集信息)
- 版本控制(subverson 标签)
现在我遇到的问题是我是否想尝试从存储库重建旧映像。由于 AssemblyInfo.cs 不受版本控制,而是一个生成的文件,因此当我现在尝试构建时,版本控制信息将与使用 CruiseControl 构建此版本的存储库时的版本信息不同。我希望能够生成完全相同的图像,无论它是在 CC 构建期间构建的还是稍后从 Subversion 签出时构建的。
我知道通常不建议这样做,但我是否应该在每次构建后签入 assemblyInfo.cs 文件,以便当我随后从 svn 签出进行构建时,将使用正确的版本信息?
谢谢,
利亚姆
要么根本不对 AssemblyInfo.cs 进行版本控制,要么将它们的“开发人员版本”放入存储库中,并在构建后让 CruiseControl.Net svn-revert 它们(我稍后会这样做,以便在开发人员工作站上进行的构建很容易从从 CruiseControl.Net 下载的“官方”版本)。
至于稍后复制相同的构建标签 - 您已经必须通过手动调用 MSBuild / NAnt 来进行重建,只需将 CCNetLabel 设置为适当的值传递给它,您将获得与从 CruiseControl 调用的构建相同的程序集版本.Net(MSBuild:/p:CCNetLabel=1.4.2.333
, NAnt:-D:CCNetLabel=1.4.2.333
).
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)