首页 文章

在Subversion中我可以是我的登录名以外的用户吗?

提问于
浏览
241

我想知道如何让 Subversion 更改我的更改显示的名称 .

我刚刚开始使用 Subversion . 我'm currently using it to version control code on an XP laptop where I'我总是在我的妻子's name. I'下登录,像subversion DB一样在我的名字下显示更改 .

稍后我将复制数据库,以便整个房子可以访问它 . 我的妻子使用办公室电脑,她总是以我的名义登录 . 我可能会设置它,以便自动检查修改后的文档...最好是在她的名下 .

最终我可能会在另一个用户名的Linux机器上使用它 .

有没有办法修改用户环境来更改Subversion调用你的用户名?我希望设置 SVN_USERNAME='Mark' 之类的东西会覆盖,但它通常会得到名称 .

Update: 看起来像Michael提到的 --username 标志确实可以更改 "svn stat" 报告的名称,即使对于本地文件:存储库也是如此 . 此外,它是粘性的,因此您无需为下一个命令指定它 . 我甚至重新启动它仍然使用我之前启动时的 "--username" 值 .

13 回答

  • 11

    大多数Subversion命令使用 --username 选项指定要用于存储库的用户名 . Subversion会记住每个工作副本中使用的最后一个存储库用户名和密码,这意味着,如果您使用 svn checkout --username myuser ,则永远不需要再次指定用户名 .

    As Kamil Kisiel says,当Subversion直接从文件系统访问存储库(即存储库URL的格式为 file:///path/to/repofile://file-server/path/to/repo )时,它使用您的文件系统权限来访问存储库 . 当您connect via SSH tunnelingsvn+ssh://server/path/to/repo )时,SVN会根据您的SSH登录信息在服务器上使用您的FS权限 . 在这些情况下, svn checkout --username 可能不适用于您的存储库 .

  • 7

    对svn over ssh试试:

    svn list svn+ssh://[user_name]@server_name/path_to_repo
    

    svn会提示你输入 user_name 的密码 .

  • 70

    您可以通过〜/ .subversion / servers设置默认用户名:

    [groups]
    yourgroupname = svn.example.com
    
    [yourgroupname]
    username = yourusername
    

    请注意,旧版本的svn不支持它(例如1.3.1 [sic!]) .

  • 6
    "svn co --username=yourUserName --password=yourpassword http://path-to-your-svn"
    

    在另一个用户帐户上为我工作 . 系统将提示您再次输入用户名/密码 . 您需要像上面一样登录,然后为随后的时间设置(除非您重新启动计算机) .

  • 39

    如果您需要指定除登录用户以外的用户名以与svn ssh just add an entry to your .ssh/config file一起使用:

    Host example.com
    User jdoe
    
  • 34

    如果使用我登录的用户名失败,Subversion通常会要求我提供“Subversion用户名” . 所以,当我很懒(通常)时,我会让它问我密码,然后按Enter键,等待用户名提示并使用我的Subversion用户名 .

    否则,迈克尔的解决方案是一个直接指定用户名的好方法 .

  • 2

    大多数答案似乎是针对svn ssh,或者似乎不适合我们 .

    对于http访问,从命令行注销SVN用户的最简单方法是:

    rm ~/.subversion/auth/svn.simple/*

    帽子提示:http://www.yolinux.com/TUTORIALS/Subversion.html

  • 276

    我相信如果您使用file://方法访问您的subversion存储库,您的更改总是在访问存储库的用户下执行 . 您需要使用支持身份验证的方法,例如http://或svn:// .

    http://svnbook.red-bean.com/en/1.5/svn-book.html#svn.serverconfig.choosing

  • 6

    将Subversion与Apache模块或svnserve一起使用 . 我已经能够使用 --username 作为多个用户执行操作 .

    每次以'new'用户身份调用Subversion命令时, $HOME/.subversion/auth/<authentication-method>/ 目录都会为该用户缓存一个新条目(假设您能够使用正在与该特定用户联系的服务器的正确密码或身份验证方法进行身份验证) .

  • 2

    如果您使用svn ssh连接到存储库,则唯一对您进行身份验证并授权您的是您的ssh凭据 . 其他一切都被忽略了 . 您的用户名将完全按照在ssh连接中 Build 的内容记录在subversion中 . 对此的一个很好的解释是jimmyg.org/blog/2007/subversion-over-svnssh-on-debian.html

  • 0

    转到 ~/.subversion/auth/svn.simple/* ,您将看到包含有关svn用户帐户信息的文件列表 . 只需删除您不需要的所有其他内容 .

    之后,当您执行任何与SVN操作有关的操作时,例如commit,rm等 . 您将再次提示输入用户名或密码 .

  • -3

    TortoiseSVN始终提示输入用户名 . (除非你告诉它不是至)

  • 12

    我相信你可以设置 SVN_USER 环境变量来改变你的SVN用户名 .

相关问题