我正在使用 pysvn,我正在尝试找到一种体面的方法来处理只能通过 svn+ssh 访问的存储库。显然 SSH 密钥使这一切变得异常简单,但我不能保证最终用户会使用 SSH 密钥。这也必须能够在没有用户交互的情况下运行,因为它将进行一些 svn 日志解析。
最大的问题是,使用 svn+ssh 会弹出一个交互式提示进行身份验证。显然,我希望能够让 pysvn 使用一组给定的凭据自动登录,但是 set_default_username 和 set_default_password 在这方面对我没有任何好处。如果我不能这样做,我至少希望能够失败,并记录一条消息告诉用户设置一个 SSH 密钥。但是,set_interactive 似乎也与此无关,并且仍然提示我使用 client.log('svn+ssh://path') 输入密码。
关于如何解决这个问题的任何想法?是否真的可以在没有 SSH 密钥的情况下处理这个问题,因为是 SSH 发出提示?