持续集成和软件版本控制

3

我喜欢自动版本控制构建的想法,但我不确定将AssemblyInfo.cs更改放回源代码控制的正确方法是什么(或者它是否应该进入源代码控制)。这是CI服务器应该为每个构建自动提交的内容吗?

目前正在使用Bamboo。


1
你使用哪个CI服务器?答案会因为Bamboo、TeamCity或TeamFoundation Server而有所不同。 - Pete Garafano
@JoePhilllips - 我已经编辑了我的答案,并附上了一个链接,说明如何在构件中设置构建编号。 - Srikanth Venugopalan
2个回答

1
我们正在使用Teamcity作为我们的CI服务器,它带有一个名为AssemblyInfo patcher的功能。这个功能会暂时在Assemblyinfo.cs中添加Teamcity构建号码,生成构件,然后撤销更改。这样生成的构件版本号与构建号相同。
源代码控制可以将assemblyinfo.cs版本条目设置为开发人员正在处理的当前修订版本,其中'*'表示构建号。这可以在每次发布后更新。 编辑1: 由于您正在使用Bamboo,此处是一个链接,描述了一种在Bamboo生成的构件中设置构建号的方法,而无需检入AssemblyInfo.cs。

0
我有点困惑你的问题。如果你想让更改持久化,你需要在构建任务编辑 AssemblyInfo.cs 后提交它。然而,大多数试图解决这些问题的构建系统并不会持久化更改。它们只是检出文件,在启动构建任务之前编辑本地版本。

大多数构建系统...在那个系统中,当您想要返回历史并从源代码控制重新构建某个版本时,该如何处理?如果没有提交任何内容,您如何知道要从哪个点“拉取”? - stonedauwg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接