解决jenkins打包时不能及时更新到最新代码的问题

在使用Jenkins做持续集成时,遇到Jenkins的SVN插件没有更新到最新的代码的情况。

例如,在代码提交之后就立即使用Jenkins更新代码,结果刚提交的代码没有被更新到,更新到的代码是旧版本的。


查阅网上相关内容,有一种说法为:
Jenkins服务器时间与SVN服务器时间不一致,Jenkins的SVN插件是使用时间标签下载,而不是取HEAD,
因此如果svn服务器的提交代码时间比Jenkins的当前时间晚,该代码就不会被更新。
所解决问题的方法是:
只要将Jenkins服务器时间与SVN服务器时间设置成一样的就可以。

没错,上面是解决了问题,但Jenkins的SVN插件是与时间戳相关的SVN revision吗?

查看某个Jenkins Job的构建日志,在使用SVN插件更新代码时,日志如下:
Updating svn://repository_path at revision '2015-08-06T08:48:12.490 +0800'
从上面可以看出来,该次构建相应的revision确实是构建时间戳。

那么,可以让Jenkins的SVN插件更新代码时,设置revision为HEAD吗?
答案是可以的,在SVN URL加@HEAD后缀即可,Jenkins的SVN插件是支持这个的。
在SVN URL加@HEAD后缀后,构建Jenkins Job后日志输出如下:
Updating svn://repository_path@HEAD
而且这样确保更新的代码是最新的,不会因为Jenkins服务器与SVN服务器之间的时间差受到影响。
注:HEAD是SVN revision关键字,表示版本库中的最新版本。

原文:http://my.oschina.net/donhui/blog/490125
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值