【问题标题】:IntelliJ Subversion Authentication Required DialogIntelliJ Subversion 需要身份验证对话框
【发布时间】:2014-03-20 17:50:17
【问题描述】:

我正在尝试从 subversion 存储库中签出项目。我已经输入了我的信息,例如 url、用户名和密码。我可以看到我的存储库中的文件夹列表。我选择我的项目并选择要签出到的目录。一切似乎都很顺利,我在 Checkout Option 中单击 OK 结帐,选择 1.7 格式(这就是我正在使用的),再次按下 OK 会出现不会消失的地狱般的对话框。 “需要身份验证”。我填写了我的用户名和密码(我知道这是正确的,我刚刚使用它并查看了我的存储库中的所有文件夹以进行结帐)。我单击保存凭据,然后再次单击确定。对话框很快消失并再次弹出,就好像我输入了错误的信息一样。我现在已经无数次地重新输入了我的信息。

我最后点击取消,它说:

“无法从 svn 签出:svn: E720002: 无法连接到 URL 'svn+ssh://myurl.org/home/svn/project/projectname' 的存储库 svn: E720002: Can't create tunnel: 系统找不到指定的文件。”

我有另外两个人连接到存储库并以完全相同的方式签出项目,并且工作正常。它曾经对我很好。我的结帐项目失败的硬盘驱动器给了我蓝屏死机问题。我已经更换了硬盘,这就是我遇到的问题。

我已经重新安装了 IntelliJ 和 svn。我已在 Windows 7 中以管理员身份运行它。我已删除存储在 C:\Users\Username\AppData\Roaming\Subversion 中的 Subverison 缓存,以查看是否可以修复它。似乎仍然没有任何工作,我没有想法。我正在使用 IntelliJ IDEA 13.1 版

【问题讨论】:

    标签: svn intellij-idea


    【解决方案1】:

    取消选中“使用命令行客户端”(settings-->subversion-->general)解决了这个问题。

    【讨论】:

    • 直到我从磁盘中删除旧的工作存储库并再次检查源然后取消选中自定义 SVN 客户端之前,它对我不起作用。
    【解决方案2】:

    这不是解决方案,但可能有助于缩小您的问题范围:

    安装 Subversion 命令行 clint。您可以从SlikSVN1 获得。安装TortoiseSVN时也可以安装命令行客户端。这是一个可选包。

    这样,我们可以确定问题出在 Subversion 还是 IntelliJ 上。

    svn+ssh:// 协议是最难设置的,原因有很多。它要求存储库托管在类似 Unix 的操作系统上,并且所有有权访问存储库的用户必须在同一个 Unix 组中,并且该 Unix 组具有对存储库的读/写访问权限,并且必须设置 umask也正确。

    最好的判断方法是查看您是否可以在不通过 IntelliJ 的情况下访问 Subversion 存储库。


    1. 有很多地方可以获取 Subversion 的命令行客户端,但我发现 SlikSVN 站点最容易找到 Windows。 CollabNet(这是我使用的)需要注册,然后需要一段时间才能找到非 SubversionEdge 安装。 Wandisco 也有一个客户端,但是他们推送他们的 SmartSVN 包并将命令行客户端埋在页面底部。

    【讨论】:

    • 我已经有了 TortoiseSVN 和命令行可选包。我还可以使用 TortoiseSVN 的图形界面更新我的目录。我应该尝试使用命令行更新吗?我没有这样做。所有用户都在 ubuntu 系统上的同一个组中。
    • 您可以通过 TortoiseSVN 使用 svn+ssh:// 访问您的存储库吗?这证明您可以从系统访问 repo。如果 TortoiseSVN 不起作用,命令行会很有帮助,因为它会为您提供更多信息。但是,Subversion 访问本身不是问题。这意味着 IntelliJ 是问题所在。您是否安装了 SVNKit 或 JavaHL?我相信 IntelliJ 的 Subversion 访问是通过这些第三方库。
    • 我倾向于使用 Eclipse。我必须下载并安装 IntelliJ,看看我能不能弄清楚发生了什么。
    • 我没有安装 SVNKit 或 JavaHL。是的,我可以通过 tortoiseSVN 的 GUI 使用 svn+ssh//
    • 您认为 IntelliJ 正在使用的 SVNKit 或 JavaHL 库是否具有我可以清除的单独缓存?我还想也许 svn 服务器上有一个日志,我可以看到 IntelliJ 是否甚至试图在该身份验证对话框上建立连接。
    【解决方案3】:

    当我遇到这个问题时(在 Windows 和 Intellij 13 上) - 删除我的 %APPDATA%/Subversion/auth 文件夹(在我的情况下 C:\Users\YOUR_UID_HERE\AppData\Roaming \auth) 解决了这个问题。在 unix 或 OSX 上,您会在 /etc/subversion/auth~/.subversion/auth

    中找到这个 (IIRC)

    在我的情况下,问题出在一个特定文件中,因此您可以根据需要删除 auth 文件夹中的 svn-simple 文件夹(或与您使用的任何授权方案相对应的文件夹)选择更多的 scapel 而不是链锯,或者只是方案中的文件,用于不记住凭据的特定问题领域,而是 YMMV。我通常每个开发 VM 只使用一个领域,因此对整个 auth 文件夹进行切换对我来说没有副作用。

    【讨论】:

      【解决方案4】:

      我遇到了完全相同的问题。该修复程序确实是有线的。我不得不选择“svn v1.7”而不是“svn v1.8”。一切都从那里开始。

      【讨论】:

      • 如果有人在使用 Intellij 2016.1.1,使用 1.7 over 1.8 似乎可以解决问题。
      • 在 Intellij 中选择“1.7.*”选项对我有用,使用 Intellij 2017.3.3 (U)、SVNKIT 1.8.8 和 Fedora。
      【解决方案5】:

      降级到版本 13.0.3,从 subversion 检查我的项目,然后升级到 13.1 解决了我的问题。 Intellij 没有保存我的颠覆密码。不知道是什么原因。

      【讨论】:

        【解决方案6】:

        文件>>设置>>>版本控制>>subversion 然后选择清除授权缓存

        【讨论】:

          猜你喜欢
          • 2015-01-26
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-08-12
          • 2017-04-26
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多