如果Jenkins在从bitbucket触发时发生了变化,我怎么能让Jenkins只构建功能分支

Yak*_*Yak 12 git continuous-integration branch bitbucket jenkins

我有一个Jenkins工作,构建匹配"origin/feature/**"的分支.

只要存储库挂钩(https://confluence.atlassian.com/display/BITBUCKET/Jenkins+hook+management)对存储库进行了更改,Bitbucket就会触发构建工作.

只要功能分支发生更改,此作业就会正常工作,作业会识别出分支已更改并构建它.

但是,当提交非功能分支(例如,合并开发或主控)时,bitbucket仍会触发该作业.任何功能分支都没有更改,因此它只是再次构建最后构建的功能分支.

有没有办法控制这个?

sal*_*and 8

经过一番研究,我终于找到了一个很好的解

  • 在你的Jenkins 安装Bitbucket插件
  • 将正常的Post作为Hook添加到您的Bitbucket存储库(设置 - >挂钩)并使用以下URL:

https:// YOUR.JENKINS.SERVER:PORT/bitbucket-hook /

  • 按如下方式配置Jenkins项目:
    • 构建触发器时,在将更改推送到BitBucket时启用构建
    • 源代码管理下选择GIT ; 输入您的凭据并定义要构建的分支(如**feature/*)

通过这种方式,我有三个构建项目,一个用于所有功能,一个用于开发,一个用于发布分支.