我们在这里使用 repos 的方式很奇怪(恐怕我无法控制它),其中一个根 repo 包含多个项目......没有像 trunk/tags/branches 文件夹这样的花哨的东西...... (我很难过)。
例如,结构如下所示:
http://my.svn.root/main
|-- /Project1
|-- /Project2
...
等等……
现在,在文件夹上执行 svn log
会给我该文件夹中的最新修订号。问题是 TeamCity 似乎在根目录上执行 svn info
,所以即使我像这样指定 VCS 根目录:
http://my.svn.root/main/Project1
%build.vcs.number%
属性似乎是从 repo 的 main
根目录中选取的,因此 Project2 中的提交实际上会增加该数字(这不是我想要的)。
有没有办法告诉 TeamCity 使用子文件夹的最新提交号而不是根修订版?还是其他属性可以做到这一点?
谢谢!
最佳答案
嗯,显然这都是由于 VCS root 设置造成的。基本上最好的选择是在 main 上设置根目录,然后编辑结帐规则:
VCS root: http://my.svn.root/main
checkout rules: +:Project1=>.
这似乎更加稳定,并且在构建触发方面也更具响应性。
关于svn - 在 TeamCity 中获取子文件夹 svn 修订版,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16795773/