5

我有一个 git 存储库,我在 Jenkins 中创建了两个不同的作业(一个用于生产代码,一个用于工具)。两个工作总是被触发的地方!

我为每个作业添加了排除区域,只在每个正确的文件夹上触发。

我们的 git 根文件夹包含以下内容:

/src/
/tools/
/test/
/doc/
/third party/

在 Jenkins 的 Source 工作中,我有以下排除区域

/tools/.*
/Test Projects/.*
/doc/.*

在我的工具工作中,我有以下排除区域

/src/.*
/Test Projects/.*
/doc/.*

问题是,如果我在 doc-folder 中推送更改,则会触发两个作业。我也没有任何包含区域。

4

1 回答 1

6

此设置应该可以工作。

但是,如果您在 Jenkins 中使用Gerrit 触发器,则 GitSCM 插件中的排除/包含区域将不起作用。在 Gerrit Trigger 插件中,有一个添加文件路径的选项,该选项将像包含区域一样工作,即只有在添加的文件路径发生更改时才会触发构建。

在作业的 Gerrit 触发器配置中,添加如下所示的文件路径以包含工具目录。

路径工具/**

于 2012-09-04T10:38:52.807 回答