19

我无法使用 Git 插件在 Jenkins 中使用“包含区域”功能。我希望仅在“他的”目录发生更改时才建立工作。示例:项目 mytool 仅应在GIT_ROOT/tools/mytool/. 我在包含的区域字段中尝试了几种形式的正则表达式:

 /tools/mytool/.*
 tools/mytool/.*
 ^tools/mytool/.*

使用这些正则表达式中的任何一个,结果都是相同的:每次提交更改时都会构建 mytool - 无论在哪里。我也以同样的方式尝试了排除区域 - 也没有工作。我究竟做错了什么?

4

4 回答 4

7

对我来说,它在作业配置中的“源代码管理 - 其他行为”下检查“使用工作区强制轮询”时开始工作。闻起来像一个错误 - 关于 git 插件的包含/排除区域功能有几个开放的。

编辑:更新詹金斯和 git 插件后它停止工作。原因大概是:

https://issues.jenkins-ci.org/browse/JENKINS-20607

我正在考虑在这里改用这种方法

于 2013-10-29T10:29:28.907 回答
7

我刚遇到这个问题,答案与其他答案略有不同。话虽如此,解决方案在于问题本身。对我来说,我在“包含区域”中有路径,其模式如下:

service/Search/AbstractSearchServices/master/**/*

我将模式更改为:

service/Search/AbstractSearchServices/master/.*

一旦我改变了这种模式,它就非常适合我。

于 2016-01-01T21:20:24.507 回答
0

确保在 Build Trigger Poll SCM 下选中,或者您有其他方式让 Jenkins 知道有更改。

您目前只是在定义区域,但 Jenkins 仍然必须先拉取更新,然后才能看到更改。

于 2013-10-28T22:07:50.797 回答
0

只是给其他访问该站点的人的注释,因为他们遇到了included-regions我遇到的问题:

我也遇到了路径模式的问题tools/mytool/.*,它不能作为included-region. 原因是我确实shallow clone在 git scm 设置中启用了该选项。当该选项被禁用时,included-region参数按预期工作。

于 2019-08-01T11:37:57.160 回答