最直接的临时解决方式是使用--trust-server-cert --non-interactive参数跳过ssl证书验证,适用于命令行、idea及jenkins等场景,但仅限测试环境,生产环境应修复证书问题。

SVN客户端遇到SSL证书问题(比如自签名、主机名不匹配、证书过期等),最直接的临时解决方式就是跳过SSL证书验证。但要注意:这会降低通信安全性,仅建议用于内部测试环境或紧急调试,生产环境应优先修复证书本身。
命令行方式:一次性跳过验证
适用于临时检出、更新或日常操作,无需修改配置文件:
- 使用 --trust-server-cert 参数信任服务器证书(含自签名)
- 搭配 --non-interactive 避免交互式确认弹窗
- 常见组合命令示例:
svn checkout --trust-server-cert --non-interactive https://your-svn-server/repo
svn update --trust-server-cert --non-interactive
若需更细粒度控制(如只忽略特定错误类型),可用:
--trust-server-cert-failures=unknown-ca,expired,hostname-mismatch
全局配置方式:永久生效(用户级)
修改 Subversion 的用户配置文件,让所有命令默认跳过验证(仍不推荐长期用于生产):
- 找到配置文件路径:
• Linux/macOS:~/.subversion/servers
• Windows:%APPDATA%\Subversion\servers - 在
[global]区块下添加或修改以下两行:
ssl-ignore-hosts = *
http-auth-types = basic;digest;negotiate
注意:部分 SVN 版本支持 ssl-authority-files 指定信任证书路径,但“完全忽略验证”更依赖 ssl-ignore-hosts 或环境变量配合。
IDEA 等 IDE 中配置 SVN 插件
IntelliJ IDEA(含 PyCharm、WebStorm 等)默认使用 SVNKit,若改用命令行客户端可复用上述参数:
- 进入 Settings → Version Control → Subversion
- 勾选 Use command line client,并确保已安装 svn 命令行工具
- 在 Additional command line parameters 输入框中填入:
--trust-server-cert --non-interactive
保存后,所有通过 IDEA 执行的 SVN 操作(如 Update、Commit)都将自动跳过证书校验。
Jenkins 中跳过 SVN SSL 校验
在 Jenkins 的 Subversion 插件中,可通过构建参数或全局配置实现:
- 进入 系统管理 → 全局工具配置 → Subversion
- 在 Additional Subversion arguments 中填写:
--trust-server-cert --non-interactive
或者在 Pipeline 脚本中显式指定:
checkout([$class: 'SubversionSCM', locations: [[remote: 'https://...'], ...]], additional: '--trust-server-cert --non-interactive')











