如何以不同的用户身份执行 svn commit?

Posted

技术标签:

【中文标题】如何以不同的用户身份执行 svn commit?【英文标题】:How to do svn commit as different user? 【发布时间】:2012-08-31 00:37:28 【问题描述】:

我通过

检查了我的代码库

'svn co svn+ssh://radek@repository.server.com/var/lib/svne2/edumate2/trunk/ trunk/'

我编写了一个小的 Web 应用程序来合并和签入运行良好的代码库。现在我想让这个应用程序可供开发人员使用。现在所有的提交都是以我的名义进行的。

如何在不同的svn用户下提交?

我尝试了svn --username kon ci -m 'EDU-8319 into trunk' /srv/www/htdocs/merging/trunk,提交成功,但以我的名义。 svn 没有显示任何错误,也没有询问 kon 的密码。

【问题讨论】:

【参考方案1】:

您使用的是svn+ssh,因此svn 将忽略--username 参数(因为SVN 服务器只会使用您的登录用户名)。

尝试svn relocate svn+ssh://<new-user>@repository.server.com/var/lib/svne2/edumate2/trunk/,然后提交。

【讨论】:

搬迁会做什么?那很费时间吗?该存储库包含大约 15000 个文件。 Relocate 基本上改变了存储库 URL。它几乎完全是本地操作;仅联系存储库以确保它具有相同的 UUID 和路径。它应该相对较快(最坏的情况是几分钟)。【参考方案2】:

另一种选择是将配置文件添加到您的 ~/.ssh 目录中,以便 svn+ssh 始终使用此用户:

Host svn.server.hostname
  User svn.username

更多信息请查看: http://www.highlevelbits.com/2007/04/svn-over-ssh-prompts-for-wrong-username.html

如果通过 tjstankus @Subversion ignoring "--password" and "--username" options找到这个解决方案

【讨论】:

以上是关于如何以不同的用户身份执行 svn commit?的主要内容,如果未能解决你的问题,请参考以下文章

如何做到svn根目录不让访问,但子目录可以访问权限的设置?

linux svn post-commit 更新 我的svn post-commit 当ide提交时候可以执行,但是svn update 却没成功

高分求windows下SVN的post-commit.bat的代码,能用马上给分

在 Windows 上,是不是可以以不同的用户身份运行单个 goroutine?

svn commit 命令,只要提交一个文件怎么办?

人脸核身技术原理架构与开发