我正在设置另一个用户来使用我们的 SVN 存储库。他没有用户名/密码,所以我使用我的凭据登录。我们现在有了他的用户名/密码。
如何让 TortoiseSVN 注销并忘记旧密码,以便输入新的用户名/密码?
打开 Windows 资源管理器。右键单击窗口中的任意位置。单击 TortoiseSVN → 设置。单击已保存的数据。单击身份验证数据旁边的清除(见下文)。检查认证项目以清除。单击确定。
删除所有项目的所有已保存身份验证数据。
您必须重新输入凭据才能重新连接。
https://i.stack.imgur.com/bhquQ.png
有几种方法可以做到这一点,通过设置或删除缓存。
删除缓存是最通用的方法。首先,找到它:
在 XP 上,它位于此处:
C:\Documents and Settings\%USER%\Application Data\Subversion\auth\svn.simple\
在 Vista 上,它位于此处:
C:\Users\%USER%\AppData\Roaming\Subversion\auth\svn.simple\
然后使用记事本查看这些文件,并使用您的凭据删除该文件。
svn.simple
中描述领域的文件。相反,我在 svn.ssl.server
中找到了它;通过删除它,我必须接受证书,但肯定会提示输入凭据。
如果您只想删除一个已保存的密码,例如“user1”:
转到保存的密码目录(*c:\Users\USERNAME\AppData\Roaming\Subversion\auth\svn.simple\*)
您将在此文件夹中找到几个文件(以哈希值命名)
找到包含您要更改的用户名“user1”的文件(用记事本打开)。
删除文件。
下次你连接到你的 SVN 服务器时,Tortoise 会提示你输入新的用户名和密码。
当您使用 Integrated Windows Authentication(即 Active Directory 单点登录)时,您将使用您的 AD 凭据自动对 AD 资源进行身份验证。您已经登录到 AD,并且这些凭据会自动重复使用。因此,如果您的服务器启用了 IWA(例如,VisualSVN 服务器),服务器不会要求您输入用户名和密码,传递 --username
和 --password
不起作用,并且 SVN 客户端不会在磁盘上缓存您的凭据, 也。
当您想更改用于联系服务器的用户帐户时,您需要使用客户端的 Windows Credential Manager。当您的计算机未加入域并且您需要存储 AD 凭据以访问您的域资源时,这也很有帮助。
按照以下步骤将用户的域凭据保存到用户计算机上的 Windows 凭据管理器:
开始控制面板 |客户端计算机上的凭据管理器。单击添加 Windows 凭据。作为 Internet 或网络地址,请输入服务器机器的 FQDN(例如,svn.example.com)。作为用户名,以 DOMAIN\Username 格式输入您的域帐户的用户名。填写密码字段并单击确定。
现在,当您联系 https://svn.example.com/svn/MyRepo
或类似的 URL 时,客户端或 Web 浏览器将使用保存在凭据管理器中的凭据向服务器进行身份验证。
https://i.stack.imgur.com/5VVRs.png
在为此苦苦挣扎并尝试了此页面上的所有答案之后,我终于意识到我的 Windows 为托管我们的颠覆的服务器存储了不正确的凭据。我从 Windows 凭据中清除了这个存储值,一切都很好。
替换 htpasswd 文件中的行:
转到:http://www.htaccesstools.com/htpasswd-generator-windows/
(如果链接已过期,请从 google.com 搜索另一个生成器。)
输入您的用户名和密码。该站点将生成一条加密线路。复制该行并将其替换为文件“repo/htpasswd”中的上一行。
您可能还需要从 TortoiseSVN → 设置 → 保存的数据中清除“身份验证数据”。