我们的构建服务器运行Jenkins 1.502,Subversion插件升级到版本1.45。此插件使用svnkit-1.7.6-jenkins-1.jar
。
我们还安装了SVN客户端1.7.8。
Jenkins成功检出SVN存储库中的源代码。但是当我进入工作区目录并尝试手动运行某个svn命令时,它会失败:
# cd /var/lib/jenkins/jobs/myproject/workspace/ # svnversion svn: E155036: Working copy '/var/lib/jenkins/jobs/myproject/workspace' is too old (format 8, created by Subversion 1.4)
错误消息表明工作副本是由SVN 1.4创建的,但svnkit的版本是1.7.6。怎么会这样?
我搜索了整个文件系统,没有任何其他svnkit-*.jar
文件。
答案 0 :(得分:55)
jenkins中有一个选项告诉svn使用哪种工作副本格式(管理jenkins>配置系统),寻找'Subversion工作区版本'下拉 - 它可能设置为1.4。将其更改为列表中的最新版本。
答案 1 :(得分:6)
我无法将颠覆降级到1.7。 (由于依赖性)。
解决此问题的另一种方法是添加" Pre Step / Execute Shell"在作业配置中分别使用svn upgrade
命令cd trunk; svn upgrade
。
这适用于subversion 1.8.8 在Ubuntu 14.04上。