TeamCity的版本控制(例如在TFS中)构建配置 - 是否可能?

JHo*_*ley 5 versioning teamcity configuration tfs

我正在寻求将我们的构建基础架构从CC.NET迁移到TeamCity.不可否认,TeamCity此时非常环保.

一个潜在的阻碍是我们需要我们的构建配置与它构建的源代码一起进行版本控制.CC.NET使这非常简单,是一个非常有用/强大的功能.

从我的调查中你可以改变TeamCity存储其配置/数据的位置,但是没有任何官方文档(这里也没有关于SO的其他主题)似乎引用它放置在版本控制的位置,如TFS,Perforce或ClearCase.

因此,我想知道它是否可能和/或它是"完成的事情"?

可能是因为如果TeamCity假定R/W访问任何配置文件并且底层VCS使文件R/O需要签入/签出语义,这将使TeamCity混淆并阻止它工作.

这里有没有人有Team Foundation Server(或类似)中版本控制TeamCity构建配置的经验?

谢谢,杰克

仅供参考 - 一个版本如何控制TeamCity项目的配置?似乎是SO上唯一类似的线程. http://confluence.jetbrains.net/display/TCD7/How+To ...以及相关官方文档谈论迁移配置和/或备份配置,这很接近但不是真的相同.

Sea*_*ean 3

这不是答案,但是...

我们向 JetBrains 询问了他们对此的建议,并得到了以下答复:

到目前为止,版本控制中还没有存储配置设置的功能。设置以 XML 形式存储在磁盘上(在 TeamCity 数据目录中 - http://confluence.jetbrains.net/display/TCD7/TeamCity+Data+Directory),理论上可以将该目录与版本控制同步。您可能想投票支持该功能或在我们的问题跟踪器中观看:http://youtrack.jetbrains.com/issue/TW-2806

我看不到任何优雅的解决方案,所以认为最好的解决方案(最不最坏的解决方案......)是:

  1. 将复杂的构建逻辑移至受版本控制的 MSBuild/Nant 脚本中;和
  2. 如果您有时间,请在源代码管理和 TeamCity 数据目录之间实现自定义同步服务。在这种情况下,您可能必须准备好处理需要不时手动合并的故障(不好玩:-( )。

祝你好运,如果你找到好的解决方案请分享:-D