代码之家  ›  专栏  ›  技术社区  ›  Michal Sznajder

如何更改访问本地SVN存储库的默认作者?

  •  10
  • Michal Sznajder  · 技术社区  · 16 年前

    我使用Tortoissesvn访问基于文件的本地repo。在我提交的所有内容中,作者是我的Windows登录名。是否可以使用不同的名称?

    我知道如何在提交后更改作者,但在提交前如何更改?安装apache/svnserver不是一个选项。

    5 回复  |  直到 11 年前
        1
  •  15
  •   Ricardo Acras    15 年前

    是的,这是可能的。

    龟龟 以及 svn 命令行客户端在配置文件文件夹中共享相同的设置位置。因此,您可以使用 外星人 :

    $ svn co --username different_user_name file:///C:/path/to/your/repo
    

    …Subversion将很乐意替换该存储库的关联用户名。不管您签出的是什么程序,来自Tortoissesvn的新提交都将始终使用该用户名。

    该程序应适用于Tortoissevn 1.5.5。如果没有,请尝试清空SVN的身份验证缓存( %APPDATA%\Subversion\auth\svn.username )首先。

        2
  •  1
  •   JXG Jasmynn Flores    16 年前

    另一个可能的解决方法(但我 不是 提倡它)是在提交之前使用客户端钩子脚本,以便更改用户名。

    钩子脚本在Subversion Book中讨论,本地钩子在Tortoissvn帮助的“客户端钩子脚本”中讨论。

        3
  •  0
  •   unknown (yahoo)    16 年前

    据我所知,乌龟没有提供任何方法来做到这一点。

    可能这并不是一个大问题,因为基于文件的访问在多用户场景中并不实用,对于单个用户来说,作者名的重要性较小。

    一个可能的解决方法是用您想要的作者名创建另一个Windows用户名,并用它连接。

        4
  •  0
  •   Brock Boland    16 年前

    我从来没有在Windows机器上托管过SVN,所以这是一个黑暗中的尝试。您可能能够创建一个新的Windows用户,并在浏览、签出、提交等时指定该用户。假设您希望将更改作为 msznajder . 在Windows中创建具有该名称的用户,然后尝试使用Tortoissesvn的repo浏览器浏览存储库,并在URL中指定用户名-类似于 file:///msznajder@localhost/some/file/path .

        5
  •  0
  •   Sven Witterstein    15 年前

    我建议设置一个提交后挂钩(在repo的hook s文件夹中-只需将post-commit-hook.tmpl复制到post-commit-hook.bat并清空它[1]

    svn propset svn:author --revprop -r HEAD <author> file:///<path-to-repo> 〔2〕

    [1]如果安装了sliksvn或类似软件,即可以使用命令行SVN访问)

    [2](或.sh,如果在Linux上,使用!/具有相同内容的bin/bash前导码)