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

首先要定位是否真的拉不到最新代码?服务器

定位步骤以下:svn

一、在SVN上,查看show log,没有记录.net

二、登陆Jenkins,查看构建的输出记录,Console Output,插件

      ctrl+f,若找不到最新代码,则能够肯定是拉不到最新代码啦。日志

三、检查Jenkins服务器时间与SVN服务器时间是否是真的不一致 ?blog

解决方法:get

方法一: 把Jenkins服务器时间与SVN服务器时间调整成一致。(此方法使用过,是能够解决了)it

输入date查看服务器时间io

输入要修改为的时间 date -s "2019-04-08 16:34:00"登录

方法二:

方法一解决了问题,但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关键字,表示版本库中的最新版本。

相关文章
相关标签/搜索