我正在设置另一个用户来使用我们的SVN存储库。他没有用户名/密码,所以我用我的凭证登录了。我们现在有了他的用户名/密码。

我如何让TortoiseSVN注销并忘记旧密码,以便我可以输入新的用户名/密码?


当前回答

当您使用集成Windows身份验证(即,Active Directory单点登录)时,您将使用AD凭据自动对AD资源进行身份验证。您已经登录到AD,这些凭证将被自动重用。因此,如果您的服务器启用了iwa(例如,VisualSVN server),服务器不会要求您输入用户名和密码,传递——username和——password不起作用,而且SVN客户端也不会将您的凭据缓存到磁盘上。

当您想要更改用于联系服务器的用户帐户时,您需要在客户端使用Windows凭据管理器。当您的计算机没有加入域并且您需要存储AD凭据来访问域资源时,这也很有帮助。

按照以下步骤将用户的域凭据保存到用户计算机上的Windows凭据管理器:

在客户端计算机上启动控制面板|凭据管理器。 单击“添加Windows凭据”。 作为Internet或网络地址输入服务器机器的FQDN(例如,svn.example.com)。 As Username输入域帐号的用户名,格式为domain \Username。 填写密码字段并单击OK。

现在,当您联系https://svn.example.com/svn/MyRepo或类似的URL时,客户机或web浏览器将使用凭证管理器中保存的凭证向服务器进行身份验证。

其他回答

替换htpasswd文件中的行:

访问:http://www.htaccesstools.com/htpasswd-generator-windows/

(如果链接过期,请从google.com搜索另一个生成器。)

输入用户名和密码。该站点将生成一条加密线路。复制这一行,并将其替换为文件“repo/htpasswd”中的前一行。

您可能还需要清除TortoiseSVN→Settings→Saved data中的“Authentication data”。

在苦苦挣扎并尝试了本页上的所有答案之后,我终于意识到我存储在承载我们的subversion的服务器的windows中的凭据是错误的。我从windows凭证中清除了这个存储值,一切正常。

https://web.archive.org/web/20160614002053/http://windows.microsoft.com/en-us/windows7/remove-stored-passwords-certificates-and-other-credentials

如果你只想删除一个保存的密码,例如“user1”:

进入密码保存目录(*c:\Users\USERNAME\AppData\Roaming\Subversion\auth\svn.simple\*) 您将在此文件夹中找到几个文件(以哈希值命名) 找到包含您想更改的用户名“user1”的文件(用记事本打开)。 删除文件。 下次连接到SVN服务器时,Tortoise将提示您输入新的用户名和密码。

有几种方法可以做到这一点,通过设置或删除缓存。

删除缓存是最通用的方法。首先,定位它:

在XP上,它位于这里:

C:\Documents and Settings\%USER%\Application Data\Subversion\auth\svn.simple\

在Vista上,它位于这里:

C:\Users\%USER%\AppData\Roaming\Subversion\auth\svn.simple\

然后用记事本查看这些文件,删除带有你的凭证的文件。

打开Windows资源管理器。 右键单击窗口中的任意位置。 单击“TortoiseSVN→Settings”。 单击“保存数据”。 单击“身份验证数据”旁边的“清除”(见下文)。 检查需要清除的认证项。 单击OK。

删除已保存的所有项目的认证数据。

您必须重新输入凭据才能重新连接。