配置 VCS 根目录
VCS root(VCS 根) 是 TeamCity 与 VCS 存储库通信的基石。 此重要元素定义了与 VCS 提供程序 的连接,以执行广泛的操作:存储库检出、代码源标记、将构建状态回传到 VCS 等。
VCS 根存储以下信息:
TeamCity 用于拉取和推送远程文件的获取和推送 URL。
分支信息:TeamCity 应跟踪的存储库分支列表以及哪个分支是默认(主)分支。
身份验证设置:TeamCity 用于访问存储库的凭据。
检出设置:指定如何存储远程文件以及是否应与主存储库一起检出子模块。
自定义更改轮询设置,允许您覆盖默认的 60 秒间隔。
与 VCS 根相关的部分在项目和配置设置中均可用。

然而,配置从不拥有根。 您可以将 VCS 根“附加”到配置,但根始终存储在(由)项目中。 此技术带来了以下结果:
一个 VCS 根可以附加到多个配置,这意味着多个构建配置可以使用相同的身份验证和检出设置访问同一个存储库。
单个配置可以附加多个 VCS 根,这使您能够在一个配置中使用不同的存储库。
编辑 VCS 根会影响所有使用它的配置。 在修改 VCS 根设置时,您可以选择复制此根并将更新的设置存储在此新克隆中,同时保持原始根不变。 这使您能够自定义一个构建配置,而不影响共享此根的其他配置。
尽管 VCS 根是任何与远程存储库交互的构建配置的基本部分,但在许多场景中,TeamCity 会自动生成根,而无需您为每个新构建配置手动创建它们。 有关示例,请参见 本教程。
属性 | 描述 |
---|---|
VCS 类型 | TeamCity支持的版本控制系统类型:例如,Perforce或Subversion。 |
VCS 根名称 | 项目所有 VCS 根中的 VCS 根的唯一名称。 |
VCS 根 ID | 在系统中所有 VCS 根中,VCS 根的独特 ID。 VCS 根 ID 可用于参数引用到 VCS 根参数和 REST API。 如果未指定,将会根据 VCS 根参数自动生成。 |
存储库 URL | VCS 存储库的 URL。 支持 不同格式的URL,如:
|
最小轮询间隔 | 指定 TeamCity 对 VCS 存储库进行 VCS 更改的轮询频率。 默认情况下,使用全局预定义的服务器设置,您可以在 管理 | 全局设置 页面上修改该设置。 在每个 VCS 根的基础上,间隔时间在上次轮询结束后立即开始。 在这里,您可以为当前的 VCS 根目录指定自定义间隔。
如果 TeamCity 检测到使用了一个 VCS commit hook 来触发检查更改,那么这个间隔会自动增加至预设的值(4 小时)。 如果定期检查发现了通过提交钩子未检测到的更改,轮询间隔将被重置为指定的最小值。 |
属于项目 | 每个 VCS 根都属于某个项目,而在这个部分中,会显示这个项目的名称。 VCS 根目录可以移动到当前使用根目录的所有子项目、构建配置和模板的公共父项目中。 |
参阅本节内的页面,获取 VCS 特定的配置详细信息。
note
确保同步 VCS 服务器、TeamCity 服务器和 TeamCity 代理(如果使用了代理端检出)的系统时间,如果您使用以下版本控制系统:
CVS
StarTeam(如果审计已被禁用或服务器版本早于 9.0)
通过外部连接到 VCS 根定义的主存储库的 Subversion 存储库
VSS(所有的 VSS 客户端 和 TeamCity 服务器应保持时钟同步)