如何在teamcity v8.1.5中指定vcs根签出的顺序

时间:2015-11-20 20:18:59

标签: version-control teamcity vcs-checkout

我正在使用teamcity v8.1.5。 我在网上阅读我认为根据版本控制设置中列出的顺序检查vcs根,但事实并非如此。

e.g。 版本控制设置将vcs根列为:

B'/ P>

C

当我运行构建配置时,构建日志将结帐显示为:

C

B'/ P>

然后我分开一个,重新附上它,然后列表变成

B'/ P>

C

但是运行另一个干净的结帐仍然会产生原始订单

C

B'/ P>

是否有一些内部逻辑可以确定vcs根检查的顺序以及如何配置该顺序?

感谢

为什么我需要这个

我在一个有多个项目repos的环境中工作,这样一个项目需要另一个项目的源(检查到同一个dir)来构建。复杂的部分是两个repos中存在具有相同路径/名称的某些文件,在某些情况下,项目将使用它自己的,而在另一个情况下,它需要其他repo(因此定义是否更换已检查的特定顺序)在第二次回购结账时是否输出文件)。重叠文件不是实际的源代码,而是构建/配置文件,因此将它们重命名为不同是没有意义的。

我非常清楚这不是一个好习惯,但这是我继承的,优先考虑的是在重构源结构之前让它们构建。

解决方法

我现在正在解决这个问题,通过改进最后一个vcs checkout的结帐规则来忽略特定文件,这样当我不想要它时它就不会替换这些文件。 通过vcs checkouts的顺序来控制它仍然是有帮助的。

感谢

1 个答案:

答案 0 :(得分:0)

我会使用结帐规则,因此每个仓库都自包含在自己的文件夹中,没有任何机会与其他仓库重叠内容。

对于repo A VCS Root:

+:. => A

对于repo B VCS Root:

+:. => B

对于repo C VCS Root:

+:. => C

哪个成为:

%system.teamcity.build.checkoutDir%/A

%system.teamcity.build.checkoutDir%/B

%system.teamcity.build.checkoutDir%/C