如何在 TortoiseSVN 中更改用户

Posted

技术标签:

【中文标题】如何在 TortoiseSVN 中更改用户【英文标题】:How to change users in TortoiseSVN 【发布时间】:2010-11-12 07:33:22 【问题描述】:

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

如何让 TortoiseSVN 退出并忘记旧密码,以便输入新的用户名/密码?

【问题讨论】:

【参考方案1】:
    打开 Windows 资源管理器。 右键单击窗口中的任意位置。 点击TortoiseSVN → 设置。 点击保存的数据。 点击身份验证数据旁边的清除(见下文)。 勾选要清除的认证项。 点击确定

删除所有项目的所有已保存身份验证数据。

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

【讨论】:

我在 Windows 7 上使用 tortoise svn 客户端。对于我在“已保存数据”选项卡中的情况,身份验证数据的“清除”按钮已禁用,因此删除缓存文件解决方案对我很有效。【参考方案2】:

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

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

在 XP 上,它位于此处:

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

在 Vista 上,它位于此处:

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

然后使用记事本查看这些文件,并使用您的凭据删除该文件。

【讨论】:

%APPDATA%\Subversion\auth\svn.simple\ 应该可以在任何地方工作(XP、Vista、7) 在我的例子中,我在svn.simple 中找不到描述领域的文件。相反,我在svn.ssl.server 中找到了它;通过删除它,我必须接受证书,但肯定会提示输入凭据。 我刚用过这个方法,效果很好。 在我的情况下,清理保存的数据并没有帮助——TortoiseSVN 之后向我询问用户名和密码,它保存并验证了但仍将以前的用户名放入日志中。当我删除文件后,实际上重命名了 auth 文件夹 - 一切正常。 如果您想获取您的用户名,这尤其有用。【参考方案3】:

如果您只想删除一个已保存的密码,例如对于“用户1”:

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

【讨论】:

【参考方案4】:

当您使用 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 浏览器将使用保存在凭据管理器中的凭据向服务器进行身份验证。

【讨论】:

【参考方案5】:

在为此苦苦挣扎并尝试了此页面上的所有答案之后,我终于意识到我的 Windows 为托管我们的颠覆的服务器存储了不正确的凭据。我从 Windows 凭据中清除了这个存储的值,一切都很好。

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

【讨论】:

谢谢@Patrick,你为我节省了几个小时的生产损失。事实上,我的凭据被 Window's 存储了。删除存储的凭据就可以了。【参考方案6】:

替换 htpasswd 文件中的行:

转至:http://www.htaccesstools.com/htpasswd-generator-windows/

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

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

您可能还需要从 TortoiseSVN → 设置 → 保存的数据中清除“验证数据”。

【讨论】:

为什么要更改服务器上任何文件中的一行以删除本地计算机上的凭据?

以上是关于如何在 TortoiseSVN 中更改用户的主要内容,如果未能解决你的问题,请参考以下文章

svn怎么上传文件

SublimeSublime Text 2集成TortoiseSVN插件

作为错误用户提交的更改? TortoiseSVN,颠覆

TortoiseSVN切换更改登录账号密码

svn客户端更改用户名

使用 TortoiseSVN 如何将更改从主干合并到分支,反之亦然?