我已经为一个多分支 svn 项目设置了一个 jenkins 实例,该实例由一个将受影响的分支的名称作为参数传递给 jenkins 的提交后挂钩触发。
Jenkins 然后从给定分支检查源并编译它们。这在一个限制条件下效果很好。
如果构建“x”和“x+1”确实在同一个分支上运行,jenkins 会向我显示提交的更改,这会在构建的更改链接下触发构建“x+1”。如果构建“x”和“x+1”在不同的分支上运行,我会在 jenkins 中得到一个空的更改列表和“前一个构建中没有记录的修订”行。
我现在的问题是:我如何让詹金斯不基于以前的构建进行更改,而是基于同一分支进行最后一次成功构建?
问问题
996 次
1 回答
0
据我所知,Jenkins 总是根据特定工作中的先前构建来计算更改。因此,如果您在同一个工作中运行多个分支,那么您就不走运了。我建议您查看以下插件之一:
https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Multibranch+Plugin Pipelines 似乎是不走寻常路的方式,您将 Jenkinsfile 添加到您的存储库中,它告诉 Jenkins 如何构建您的项目。Multibranch 插件通过附加功能扩展了此功能,它将检测新分支并创建新的子作业
https://wiki.jenkins-ci.org/display/JENKINS/Multi-Branch+Project+Plugin如果你坚持自由式工作,那么试试这个,据我所知,它是自由式工作,但会创建新的子-每个分支的职位。但正如链接上所说,它已被管道和多分支管道所取代。
于 2017-02-14T21:29:47.660 回答