Jenkins检测到SVN更改但不更新工作区?

时间:2012-05-02 17:32:46

标签: svn jenkins jenkins-plugins

我正在使用Jenkins 1.461,使用SVN轮询时遇到问题。我的存储库网址的格式为svn + ssh:// * **** 。我已经将Jenkins配置为每5分钟轮询一次。会发生的是每5分钟检测到一次变化:

  

2012年5月2日8:26:24 PM开始接收SCM民意调查   XXXXXXXXX于2012年5月2日下午8:26:25   svn + ssh://X.X.X.X/svn/XXXX/XXXXXXXXX/XXXXXXXX/trunk正在修订   26,192(改为26,181)完成。花了2.6秒发现了变化

但是,每次轮询后工作区都不会更新。工作区的最后一个版本仍然是26181而不是预期的26192。我不明白为什么。有什么想法吗?

迈克尔

3 个答案:

答案 0 :(得分:14)

Jenkins和SVN服务器上的时钟是否同步?如果时钟关闭甚至一点点,就会发生奇怪的事情。我自己并没有使用SVN,所以我不记得这是否是其中一个症状,但最好先检查时钟。

最简单的方法是在两台主机上安装ntpd,将它们配置为针对同一源同步并忘记它。如果您的组织中没有ntp服务器,请检查http://www.pool.ntp.org

答案 1 :(得分:0)

在SVN URL的末尾使用@HEAD实际上可以解决上述注释中Mickael Marrache提到的问题。

答案 2 :(得分:0)

这就是我解决该问题的方法。

点击启用自动刷新(在屏幕的右上角)

  

1)单击我的项目
     2)点击配置
      3)在“常规”选项卡下,向下滚动到“源代码管理”
      4)在存储库URL后面添加“ @HEAD”
      5)点击“保存”
      6)点击“应用”(重要)
      7)为我的项目点击“立即构建”

     

点击我的项目>>最近的更改

现在,您将看到您的项目已使用存储库中的最新提交进行更新。