我刚刚得到了我们的系统组交给我的一台 Shiny 的全新 Debian 服务器,/etc 目录由 Subversion 进行版本控制。不幸的是,我似乎无法保存一些配置更改; Subversion 一直向我询问设置盒子的先生们的密码,以及截至今晚 6 点谁正在休假:
djessup@server1:/etc$ sudo svn commit -m "Made some changes."
<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="9ff5fbf0fadfece9f1b1fae7fef2eff3fab1edf0f0ebb1faf1eb" rel="noreferrer noopener nofollow">[email protected]</a>'s password:
我在以自己的身份检查更改时没有遇到此问题,只有在使用 sudo 以 root 身份提交更改时才出现此问题。
我的第一个想法是有人检查了嵌入用户名的工作目录,但 svn 信息显示 Subversion 存储库的位置是 svn+ssh://svn.example.root.ent/svn/its-系统/server1,而不是 svn+ssh://[email protected]/svn/its-systems/server1。
我尝试使用 the official Subversion user guide 上记录的 --username 命令。这是完全无效的; John Doe 的用户名(为了保护无辜者而更改的真实姓名)不断出现。我在/root/.subversion 中查找了一些可能的错误配置。那里的配置为零。
最佳答案
正如您从时间戳中所期望的那样,我在得到答案后才提出这个问题。这个问题非常痛苦,我希望它的解决方案广泛传播,这样其他人就不必走入我所做的所有死胡同。
经过多次Google搜索,我终于找到了Hardy Ferentschik's wonderful blog entry解释这个问题。事实证明,问题不在于 Subversion,而在于我用来访问 subversion 的 SSH 协议(protocol)。当我打开/root/.ssh/config时,我发现了以下文本:
Host svn.example.root.ent
User jdoe
我在这个配置文件中用我的用户名替换了 jdoe,一切正常。
关于svn - Subversion 要求输入错误的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/228183/