我在本地设置了一个svn服务器,然后尝试设置用户名/密码系统,但这种方式不起作用。我原来就是这样,因为基本的co和ci运作良好,回购是一致的。
但在完成约20次提交操作后,当我查看svn log
时,它会显示所有其他用户名所做的更新(在这种情况下,测试')。我厌倦了在没有提供任何用户名的情况下签出新的副本,并再次签到。令我惊讶的是,它再次使用相同的用户名' test'。
svn log
------------------------------------------------------------------------
r20 | test | 2012-07-29 22:58:03 +0530 (Sun, 29 Jul 2012) | 1 line
Added useful svn commands.
那么,svn从哪里选择这个默认用户?我希望通过我的用户名登录提交,即登录名称' mtk',而不是其他用户名' test'。
任何指针?
由于
答案 0 :(得分:1)
在标准默认命令行客户端中,身份验证存储在$HOME/.subversion/auth
目录下。在您的情况下,可能在$HOME/.subversion/auth/svn.simple
目录下。
如果Subversion客户端找到与URL匹配的身份验证记录,则它将该用户和密码用作默认值。这样,每次在Subversion中执行某些操作时,您都不必继续登录。顺便说一句,默认情况下会缓存凭据,但您可以通过$HOME/.subversion/config
文件进行更改。
如果您使用svnserve
作为Subversion服务器,则问题可能无法正确设置svnserve.conf
文件。这是许多初学者常见的问题。转到存储库目录并编辑svnserve.conf
目录中的conf
文件。
第27行左右是第# password-db = passwd
行。删除前导#
和空格。然后,您需要使用所需的用户凭据编辑passwd
文件。那里有一个模板passwd
文件。大多数初学者编辑passwd
文件,但忘记删除#
文件中指定要使用的密码凭据文件的前导.svnserve.conf
。