【问题标题】:git clone only on new change and archive scmgit clone 仅在新更改和存档 scm 上
【发布时间】:2015-10-08 17:36:39
【问题描述】:

我使用 Jenkins 每 10 分钟从 git 提取代码,然后编译、存档以供其他作业克隆此工作区。目前它每次都从 git 中提取代码,然后每次都归档。

我只想在有任何新更改时从 git 克隆代码,否则它应该跳过并且不归档工作区。我应该使用哪个插件以及我应该在其中进行什么配置?

【问题讨论】:

    标签: jenkins jenkins-plugins


    【解决方案1】:

    所以听起来你这里有几件事要发生。以下是我用来满足类似需求的一些可能的建议:

    1.) 如果您只想在源代码控制(在本例中为 GIT)发生更改时构建您的工作,您可以使用“Poll SCM”插件。然后在那里设置一个 cron 表达式,每 10 分钟运行一次。

    “Poll SCM”插件将检查源代码控制是否有任何更改,并在找到它们时构建作业。如果这工作正常,您的工作将无法构建,因此它不会归档任何不必要的内容。

    2.) 对于存档,我会确保使用“丢弃旧版本”插件和“高级”部分来为您的工作工件保留轮换和保留政策。

    3.) 您声明“让其他作业克隆此工作区”。你真的有其他工作在这个工作空间里吗?或者你的意思是复制它的工件?我问是因为工作空间在某种意义上是临时的,你应该拉出工件。您可以使用一个名为“Copy Artifact Plugin”的插件,它允许各种选项。

    4.) “Poll SCM”插件的替代方案,如果它不起作用或者您不喜欢这个,根据您的 GIT 设置,您还可以设置一个钩子来通知 Jenkins 更改。根据 GIT 实现,有各种钩子。

    希望这会有所帮助!

    【讨论】:

      猜你喜欢
      • 2010-12-13
      • 1970-01-01
      • 2011-09-03
      • 1970-01-01
      • 2014-03-11
      • 1970-01-01
      • 1970-01-01
      • 2012-08-26
      • 1970-01-01
      相关资源
      最近更新 更多