2013-03-09 111 views
3

我喜欢自动版本化构建的想法,但我不确定将AssemblyInfo.cs更改回源代码管理(或者不应该进入源代码管理?)的正确方法是什么? 。这是CI服务器应该为每个构建自动提交的东西吗?持续集成和软件版本化

目前正在使用Bamboo。

+1

你使用什么CI服务器?答案将取决于Bamboo,TeamCity,TeamFoundation Server。 – 2013-03-09 01:32:06

+0

此刻的竹子 – 2013-03-09 04:56:04

+0

@JoePhilllips - 已经编辑了我的答案,并附有一个链接,指明如何在工件中设置内部编号。 – 2013-03-09 05:21:05

回答

0

我有点困惑你的问题。如果您希望更改持续存在,则必须在构建作业编辑后提交AssemblyInfo.cs。但是,大多数构建系统试图解决这些问题并不能坚持这些变化。他们只需检出文件并在开始构建任务之前编辑本地版本。

+0

“大多数构建系统......”在那个系统中,当你想回到历史中并且从源代码控制重建某个版本时,你该如何处理?如果什么都没有发生,你怎么知道什么点“拉”? – stonedauwg 2017-01-25 15:56:03

1

我们正在使用的TeamCity作为我们的CI服务器,它带有一个功能叫做AssemblyInfo patcher

这个做什么,暂时添加在AssemblyInfo.cs中的TeamCity的版本号,建立生成工件,然后恢复更改。这样生成的工件与版本号具有相同的版本。

源代码管理可以将assemblyinfo.cs版本条目作为开发人员正在开发的当前修订版本,其中'*'作为内部版本号。这可以在每次发布后更新。

编辑1: 由于使用的竹子,here是描述设置在竹生成的构件的内部版本号的一种方式,而无需检查,在AssemblyInfo.cs中的链接。