在我们的 Jenkins 和 git 设置中,master 是 Windows,slave 是 Linux。(在接下来的几个月中的某个时候将全部更改为 linux)。
当您在作业中设置轮询 SCM 时,轮询操作发生在主设备上,而不是作业配置为运行的从设备上。无论如何..服务器配置有问题,我无法在那里运行 git 并通过 SSH 到达另一台机器上的 repo。
net,在服务器修复之前,我无法使用 poll scm。
但是,我有一个构建作业需要在发生更改时运行,因为它构建了用于自动部署应用程序以进行进一步测试的工件。我可以使用 Build Regularly,但它会每 30 分钟构建一次(仅作为示例),并且每晚和周末构建一次,而且大多数情况下这是浪费时间。
所以,我想创建一些定时工作,检查一些东西,看看自上次以来是否有变化。构建仅针对特定分支中的内容发生。
我“认为”我可以使用 rev-list 来获取最后一次提交,但我只想要特定分支中的提交。然后我可以把它保存到一个文件中,然后重新检查下一个副业。
如果修订不匹配,则触发其他工作。
有人有更好的指导吗?