SVN更改用户名

axe*_*ger 83 svn authentication credentials

我找到了很多关于如何更改特定修订版本的用户名等的示例.

但我需要的是:我使用同事的身份验证凭据进行结账,并需要将其更改为我的凭据以供将来提交.

由于已经进行了许多更改,我不能只使用我的凭据结帐...

有人熟悉这个吗?

Ing*_*gel 72

您可以使用更改用户

要了解它是什么protocol://currentUser@server/path,运行

svn info
Run Code Online (Sandbox Code Playgroud)

在你的工作副本中.

  • 我收到一个错误"svn:E155024:无效的源URL前缀:'protocol:// currentUser @ server/path'(不与目标的URL'协议重叠:// @ newUser @ server/path')"[用我的真实URL,当然] (4认同)
  • 这不适用于普通的http-auth authenticaton方案.有关如何删除该用例的已保存用户凭据,请参阅[此答案](http://stackoverflow.com/a/9391129/313192).@James这可能是你的问题. (3认同)

Mat*_*wne 62

最简单的方法是在下次检出或提交时使用--username选项.例如:

svn commit --username newUser

要么

svn co --username newUser

然后它将被缓存,并将用作将来命令的默认用户名.

另请参阅: 在Subversion中,我可以是我的登录名以外的用户吗?

  • 来自上面的链接:“当 Subversion 直接从文件系统访问存储库时,它使用您的文件系统权限来访问存储库。(当您通过 SSH 隧道连接时,SVN 使用您在服务器上的 FS 权限,这取决于您的SSH 登录。)所以 svn checkout --username 可能不适用于您的存储库。” (2认同)

Rap*_*ert 51

我有完全相同的问题,并在SVN客户端存储用户身份验证数据的位置找到解决方案:

  1. cd~/.subversion/auth/.
  2. fgrep -l <yourworkmatesusernameORtheserverurl> */*.
  3. 删除找到的文件.
  4. 存储库上的下一个操作将再次询问您的用户名/密码信息.

(对于Windows,步骤类似; auth目录在%APPDATA%\Subversion\).

请注意,这仅适用于SVN访问方案,其中用户名是服务器登录的一部分,因此对于使用的存储库没有用处file://.


Aur*_*mas 13

<<这很简单.你应该执行

svn up --username newUsername
Run Code Online (Sandbox Code Playgroud)

而已.>>

完美工作,只是一个提示:它可以在任何svn命令上完成,而不仅仅是更新.


小智 6

Tortoise SVN --> Settings --> Saved Data

有一个清除身份验证数据的选项,单击清除按钮,它将允许您选择要清除其用户 ID/密码的连接。

执行此操作后,任何结帐或更新活动都会重新提示输入用户 ID 和密码。


Ada*_*utt 5

如果您的协议是http,并且使用的是Subversion 1.7,则可以通过在任何命令上使用global --username选项随时切换用户。

当Ingo的方法不适用于我时,这就是我发现有效的方法。