我正在管理一个svn服务器。我创建了一个新的repo,最近用户遇到了密码不能正常工作的问题。似乎每次有一个用户提交文件时,这会为其他用户敲出密码。我必须使用htpasswd -c / svn / repos / users [user]手动重置用户密码才能恢复。
我的用户文件位于/ svn / repors / users。我似乎记得在过去,如果有一个用户列表和他们的加密密码。现在它似乎有一个用户/密码组合。看起来文件会随着提交存储库的最后一个用户进行更新。
我将所有者和组从root更新为apache,但这并没有解决问题。有什么建议吗?
答案 0 :(得分:1)
我必须使用
htpasswd -c /svn/repos/users [user]
手动重置用户密码才能恢复。
$ man htpasswd
-c创建passwd文件。如果passwdfile已存在,则重写并截断。此选项不能与-n选项组合使用。
如果文件存在,请停止使用-c
,因为它会删除所有其他用户,一旦您重新添加每个用户,一切就会好起来...... < / p>
答案 1 :(得分:0)
你在为SVN服务器使用什么? svnserve
或Apache httpd
?
您的存储库位于何处?您的用户文件是否在同一目录结构下?这可能是个问题。
例如,您有:
/svn/repos/project1
/svn/repos/project2
/svn/repos/users
而且,你正在运行:
$ svn -r /svn/repos -d
您可能正在破坏用户列表,因为Subversion认为它是另一个存储库。将它移到另一个位置。
$ mv /svn/repos/users /svn/repos/project1/conf
是的,您可以安全地将用户列表存储在任何存储库的conf
目录下。只需确保每个存储库的svnserve.conf
文件指向新位置。