我在Debian Stretch机器上使用Subversion客户端(版本1.9.5 r1770682,从默认的软件包存储库安装),我只有SSH访问权限。我正在通过HTTPS连接到Subversion存储库,并希望避免每次执行svn upor svn ci命令时都必须重新输入密码。我还希望避免将密码以纯文本格式存储在磁盘上。
在SVN书建议,我应该能够使用GPG代理作为缓存我的密码的手段。尽管有svn --version报道称GPG-Agent身份验证凭据缓存应该可用,但我还是无法正常工作。
关于GPG,我创建了一个GPG密钥对,将其添加export GPG_TTY=$(tty)到我的.profile文件中,并通过加密和解密一段文本来验证GPG可以工作。
关于Subversion,在我的.subversion/config文件中,设置了以下内容:
$ grep '^[^#]' < .subversion/config
[auth]
password-stores = gpg-agent
[helpers]
[tunnels]
[miscellany]
[auto-props]
[working-copy]
Run Code Online (Sandbox Code Playgroud)
在我的.subversion/servers文件中,设置了以下内容:
$ grep '^[^#]' < .subversion/servers
[groups]
[global]
store-passwords = yes
store-plaintext-passwords = no
Run Code Online (Sandbox Code Playgroud)
svn但是,当我执行命令时,不会缓存任何密码。有人对我可能做错了什么建议吗?是否有人成功使用GPG-Agent缓存HTTPS密码?(也许此凭据缓存仅用于SVN + SSH连接吗?)
任何帮助将不胜感激。