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

时间:2008-09-05 12:17:17

标签: svn tortoisesvn default author

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

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

5 个答案:

答案 0 :(得分:15)

是的,这是可能的。

TortoiseSVN svn命令行客户端在您的个人资料文件夹中共享相同的设置位置。因此,您只需使用 svn.exe

结帐一个版本
$ svn co --username different_user_name file:///C:/path/to/your/repo

...并且Subversion将很乐意替换该存储库的关联用户名。 TortoiseSVN的新提交将始终使用该用户名,无论您使用哪个程序进行新的结帐。

该程序应与TortoiseSVN 1.5.5一起使用。如果没有,请先尝试清空svn的身份验证缓存(%APPDATA%\Subversion\auth\svn.username)。

答案 1 :(得分:1)

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

在Subversion书中讨论了Hook脚本,在TortoiseSVN帮助的“Client Side Hook Scripts”中讨论了本地钩子。

答案 2 :(得分:0)

据我所知,TortoiseSVN没有提供任何办法。

据推测,这不是一个大问题,因为基于文件的访问对多用户场景不实用,对于单用户而言,作者名称的重要性不高。

一种可能的解决方法是使用您想要的作者名称创建另一个Windows用户名并与之连接。

答案 3 :(得分:0)

我从来没有在Windows机器上托管过svn,所以这是在黑暗中拍摄的。您可以创建新的Windows用户,并在浏览,签出,提交等时指定该用户。假设您要进行更改msznajder。在Windows中创建具有该名称的用户,然后尝试使用TortoiseSVN的Repo-browser浏览存储库并在URL中指定用户名 - 类似file:///msznajder@localhost/some/file/path

答案 4 :(得分:0)

我建议设置一个post-commit-hook(在你的repo的hooks文件夹中 - 只需将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前导码),内容相同