svn: E170001报错的原因以及解决方案

本文介绍了在使用Jenkins配置SVN过程中遇到的svn:E170001权限错误问题,并提供了详细的错误日志及原因分析。文章还分享了解决方案,包括清理Windows和Linux客户端的缓存数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 什么问题What?

使用Jenkins配置的svn拉取项目,Jenkins报错:svn: E170001,经过查阅资源,该问题是由于svn的账户名和密码没有权限。重新换一个有权限的Svn账号,还是出现此问题。具体问题如下:

Started by user xxx(xxx)
Building in workspace /home/working/.jenkins/xxx/test_auto
Checking out a fresh workspace because there's no workspace at /home/working/.jenkins/xxx/test_auto
Cleaning local Directory .
Checking out http://x.x.x.x/svn/testteam/03_automated_testing at revision '2015-12-18T17:35:30.373 +0800'
ERROR: Failed to check out http://x.x.x.x/svn/testteam/03_automated_testing
org.tmatesoft.svn.core.SVNException: svn: E175002: OPTIONS /svn/testteam/03_automated_testing failed
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:388)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:373)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:361)
    at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.performHttpRequest(DAVConnection.java:707)
    at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.exchangeCapabilities(DAVConnection.java:627)
    at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.open(DAVConnection.java:102)
    at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.openConnection(DAVRepository.java:1020)
    at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.getLatestRevision(DAVRepository.java:180)
    at org.tmatesoft.svn.core.internal.wc16.SVNBasicDelegate.getRevisionNumber(SVNBasicDelegate.java:480)
    at org.tmatesoft.svn.core.internal.wc16.SVNBasicDelegate.getLocations(SVNBasicDelegate.java:833)
    at org.tmatesoft.svn.core.internal.wc16.SVNBasicDelegate.createRepository(SVNBasicDelegate.java:527)
    at org.tmatesoft.svn.core.internal.wc16.SVNUpdateClient16.doCheckout(SVNUpdateClient16.java:875)
    at org.tmatesoft.svn.core.internal.wc2.old.SvnOldCheckout.run(SvnOldCheckout.java:19)
    at org.tmatesoft.svn.core.internal.wc2.old.SvnOldCheckout.run(SvnOldCheckout.java:8)
    at org.tmatesoft.svn.core.internal.wc2.SvnOperationRunner.run(SvnOperationRunner.java:20)
    at org.tmatesoft.svn.core.wc2.SvnOperationFactory.run(SvnOperationFactory.java:1238)
    at org.tmatesoft.svn.core.wc2.SvnOperation.run(SvnOperation.java:294)
    at org.tmatesoft.svn.core.wc.SVNUpdateClient.doCheckout(SVNUpdateClient.java:777)
    at hudson.scm.subversion.CheckoutUpdater$1.perform(CheckoutUpdater.java:99)
    at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:161)
    at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:169)
    at hudson.scm.subversion.UpdateUpdater$TaskImpl.perform(UpdateUpdater.java:133)
    at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:161)
    at hudson.scm.SubversionSCM$CheckOutTask.perform(SubversionSCM.java:908)
    at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:889)
    at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:872)
    at hudson.FilePath.act(FilePath.java:991)
    at hudson.FilePath.act(FilePath.java:969)
    at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:848)
    at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:786)
    at hudson.model.AbstractProject.checkout(AbstractProject.java:1282)
    at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:610)
    at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86)
    at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:532)
    at hudson.model.Run.execute(Run.java:1741)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
    at hudson.model.ResourceController.execute(ResourceController.java:98)
    at hudson.model.Executor.run(Executor.java:381)
Caused by: svn: E175002: OPTIONS /svn/testteam/03_automated_testing failed
    at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:208)
    at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:154)
    at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:97)
    ... 38 more
Caused by: org.tmatesoft.svn.core.SVNAuthenticationException: svn: E170001: OPTIONS request failed on '/svn/testteam/03_automated_testing'
svn: E170001: OPTIONS of '/svn/testteam/03_automated_testing': 403 Forbidden (http://x.x.x.x)
    at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:62)
    at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:51)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection._request(HTTPConnection.java:771)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:382)
    ... 37 more
Caused by: svn: E170001: OPTIONS of '/svn/testteam/03_automated_testing': 403 Forbidden (http://x.x.x.x)
    at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:208)
    at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:189)
    at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:141)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPRequest.createDefaultErrorMessage(HTTPRequest.java:455)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPRequest.dispatch(HTTPRequest.java:191)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection._request(HTTPConnection.java:480)
    ... 38 more
java.io.IOException: Failed to check out http://x.x.x.x/svn/testteam/03_automated_testing
    at hudson.scm.subversion.CheckoutUpdater$1.perform(CheckoutUpdater.java:110)
    at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:161)
    at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:169)
    at hudson.scm.subversion.UpdateUpdater$TaskImpl.perform(UpdateUpdater.java:133)
    at hudson.scm.subversion.WorkspaceUpdater$UpdateTask.delegateTo(WorkspaceUpdater.java:161)
    at hudson.scm.SubversionSCM$CheckOutTask.perform(SubversionSCM.java:908)
    at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:889)
    at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:872)
    at hudson.FilePath.act(FilePath.java:991)
    at hudson.FilePath.act(FilePath.java:969)
    at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:848)
    at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:786)
    at hudson.model.AbstractProject.checkout(AbstractProject.java:1282)
    at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:610)
    at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86)
    at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:532)
    at hudson.model.Run.execute(Run.java:1741)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
    at hudson.model.ResourceController.execute(ResourceController.java:98)
    at hudson.model.Executor.run(Executor.java:381)
Caused by: org.tmatesoft.svn.core.SVNException: svn: E175002: OPTIONS /svn/testteam/03_automated_testing failed
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:388)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:373)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:361)
    at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.performHttpRequest(DAVConnection.java:707)
    at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.exchangeCapabilities(DAVConnection.java:627)
    at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.open(DAVConnection.java:102)
    at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.openConnection(DAVRepository.java:1020)
    at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.getLatestRevision(DAVRepository.java:180)
    at org.tmatesoft.svn.core.internal.wc16.SVNBasicDelegate.getRevisionNumber(SVNBasicDelegate.java:480)
    at org.tmatesoft.svn.core.internal.wc16.SVNBasicDelegate.getLocations(SVNBasicDelegate.java:833)
    at org.tmatesoft.svn.core.internal.wc16.SVNBasicDelegate.createRepository(SVNBasicDelegate.java:527)
    at org.tmatesoft.svn.core.internal.wc16.SVNUpdateClient16.doCheckout(SVNUpdateClient16.java:875)
    at org.tmatesoft.svn.core.internal.wc2.old.SvnOldCheckout.run(SvnOldCheckout.java:19)
    at org.tmatesoft.svn.core.internal.wc2.old.SvnOldCheckout.run(SvnOldCheckout.java:8)
    at org.tmatesoft.svn.core.internal.wc2.SvnOperationRunner.run(SvnOperationRunner.java:20)
    at org.tmatesoft.svn.core.wc2.SvnOperationFactory.run(SvnOperationFactory.java:1238)
    at org.tmatesoft.svn.core.wc2.SvnOperation.run(SvnOperation.java:294)
    at org.tmatesoft.svn.core.wc.SVNUpdateClient.doCheckout(SVNUpdateClient.java:777)
    at hudson.scm.subversion.CheckoutUpdater$1.perform(CheckoutUpdater.java:99)
    ... 19 more
Caused by: svn: E175002: OPTIONS /svn/testteam/03_automated_testing failed
    at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:208)
    at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:154)
    at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:97)
    ... 38 more
Caused by: org.tmatesoft.svn.core.SVNAuthenticationException: svn: E170001: OPTIONS request failed on '/svn/testteam/03_automated_testing'
svn: E170001: OPTIONS of '/svn/testteam/03_automated_testing': 403 Forbidden (http://x.x.x.x)
    at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:62)
    at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:51)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection._request(HTTPConnection.java:771)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:382)
    ... 37 more
Caused by: svn: E170001: OPTIONS of '/svn/testteam/03_automated_testing': 403 Forbidden (http://x.x.x.x)
    at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:208)
    at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:189)
    at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:141)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPRequest.createDefaultErrorMessage(HTTPRequest.java:455)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPRequest.dispatch(HTTPRequest.java:191)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection._request(HTTPConnection.java:480)
    ... 38 more
Finished: FAILURE
2. 为什么出现此问题?

重新用一个有权限的Svn账户拉取项目,为什么出现此问题,其中的原因是svn客户端本地有缓存。虽然重新用有权限的svn账户,但是svn登录时,还是用的本地存在没有权限的svn账户。

3. 解决办法

win客户端(清除本地缓存) 
【TortoiseSvn】—–》【setings】—-》【saved Data】——-》点击Authentication的【Clean】按钮 
这里写图片描述
这里写图片描述

linux客户端(清除本地缓存) 
方法一: 
linux下删除~/.subversion/auth即可清除之前的用户名和密码:rm -rf ~/.subversion/auth

以后再操作svn会提示你输入用户名,这时就可以使用新的了

方法二: 
svn操作时带上–username参数,比如svn –username=smile co svn_path local_path

4. 总结

日志错误看清楚很重要!!!!

### 关于SVN错误E000065的解决方案 SVN 错误 `E000065` 通常表示授权失败或无法验证服务器的身份。这种问题可能由多种原因引起,例如客户端配置不正确、认证缓存过期或者网络连接异常等。以下是针对该问题的具体分析和解决方法: #### 1. 清除已保存的认证信息 如果用户的认证信息已经损坏或不再有效,则可能导致此错误。可以通过清除存储在 TortoiseSVN 或其他 SVN 客户端中的认证数据来解决问题。 - 对于 Windows 用户,在 TortoiseSVN 中可以执行以下操作: - 打开 **TortoiseSVN 设置** -> **Saved Data**。 - 删除所有保存的用户名/密码以及 SSL 证书缓存[^2]。 #### 2. 验证URL地址的有效性 确保使用的 URL 地址是正确的,并且能够正常访问远程仓库。如果 URL 发生变化(如迁移至新服务器),旧路径可能会引发此类错误。 ```bash svn info http://your-repository-url/ ``` 运行上述命令测试是否能成功获取版本库的信息。如果有权限不足提示,则说明存在身份验证方面的问题[^3]。 #### 3. 更新到最新版软件 有时特定版本间的兼容性差异也会造成类似的报错现象。因此建议升级所使用的 Subversion 工具链至最新的稳定发行版,比如从较老版本迁移到更现代的一代产品上。 对于 MATLAB 和 MSBuild 这样的集成开发环境来说,也需要确认它们内部嵌入的支持插件同样处于良好状态并及时修补漏洞[^1]。 #### 4. 处理未完成的操作 当某些更改尚未同步至中央存储库时——就像提到过的例子那样,“活动目录名称被修改却没上传”,这会干扰后续流程从而触发冲突警告消息[^4]。所以在尝试修复之前,请先整理好工作副本的状态: ```bash # 查看当前状态 svn status # 如果发现有未跟踪的新文件夹或文件 svn add path/to/new/resource # 提交这些改动前最好再次核验一遍整体情况 svn commit -m "Resolve pending changes" ``` 通过以上措施应该可以帮助缓解大多数情况下遇到的 E000065 类型事件的发生几率。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值