Jon*_*han 8 teamcity mercurial teamcity-8.0
我们当前有一个问题,当有0个文件更改时,Teamcity使用VCS触发器触发构建,我们的VCS根目录配置为Mercurial
我们有一个结帐规则设置,只检查我们要构建的解决方案所需的文件夹,如果解决方案所属的文件夹中有更改,我们只需要构建解决方案
我们遇到的问题是teamcity是在文件夹没有任何变化时触发构建,这只有当我们合并头时才会发生.
挂起的更改将显示0个文件,如果您查看文件更改,则显示的文件来自未包含在结帐规则或VCS触发器中的文件夹.
我似乎无法想出这一个,所以任何帮助将不胜感激.
我想 TC9文档回答了为什么会发生这种情况。我知道该文档适用于较新的版本,但它似乎与您所拥有的确切场景有关。
触发分支合并构建
VCS 触发器完全了解分支,一旦在分支中检测到签入,就会触发构建。
当更改从一个分支合并/快进到另一个分支时,严格来说,代码中没有实际更改。默认情况下,VCS 触发器的行为方式如下:
- 当合并/快进两个非默认分支时:构建中的更改是根据同一分支中的先前构建来计算的,因此如果在不同分支中的同一提交上有构建,则触发器将启动构建另一个分支指向同一个提交。
- 如果默认分支是合并/快进中的分支之一,则始终根据默认分支计算更改,如果默认分支中存在相同修订版本的构建,TeamCity 将不会在同一版本上运行新构建修订。