Svn 是否可以在Subversion中保留一些关于提交的元信息

Svn 是否可以在Subversion中保留一些关于提交的元信息,svn,git-svn,Svn,Git Svn,subversion的一个问题是,它仅通过用户名标识提交。例如,Git允许将全名和电子邮件地址作为元信息添加到提交中。有些组织需要很难映射到个人的用户帐户。其中一些组织还需要使用svn。为了使这种情况对代码审阅者可行,我提出了以下问题: 是否可以在提交中保留一些元信息,以便让svn进行映射 或者如果这是不可能的 如何使用git svn在本地系统上进行映射 您可以在subversion的任何版本上设置自定义版本属性(有关详细信息,请参阅) $svn propset property\u na

subversion的一个问题是,它仅通过用户名标识提交。例如,Git允许将全名和电子邮件地址作为元信息添加到提交中。有些组织需要很难映射到个人的用户帐户。其中一些组织还需要使用svn。为了使这种情况对代码审阅者可行,我提出了以下问题:

  • 是否可以在提交中保留一些元信息,以便让svn进行映射
或者如果这是不可能的

  • 如何使用git svn在本地系统上进行映射

您可以在subversion的任何版本上设置自定义版本属性(有关详细信息,请参阅)

$svn propset property\u name property\u value-r--revprop
在存储库修订版上设置属性“property\u name”
这可以在post commit hook脚本中调用(该脚本可以查看修订版作者,查找简短的作者姓名,以使用一些映射文件解析完整的作者信息,例如authors.txt,请参见下文)

GitSVN转换解决方案(如subgit或git svn)也可以使用以下格式的authors.txt映射:

shortname = Long Name <email@example.com>
anothername = Another Long Name <email2@example.com>
...
shortname=长名称
anothername=另一个长名称
...

对于每个git svn命令,authors.txt文件的路径应该由subgit中的'core.authorsFile'配置选项或git svn中的'--authors file='cli选项指定(对于git svn--authors文件仅适用于svn->git翻译,git->svn始终在用户名下创建一个修订;对于subgit,该选项双向工作).

如果需要使用git svn将“git用户”复杂映射到“subversion用户”,我建议使用--authors prog选项到“git svn clone”。例如,您可以创建my-complex-mapping.sh,它将subversion用户作为第一个参数,然后回显希望git使用的“git user”名称。然后运行“git svn clone--authors prog=$HOME/my complex mapping.sh”

仅仅保存一个外部映射是不够的:subversion author完整信息?外部映射对我个人来说是可行的,但是如果这些信息在使用svn的工具(例如Fisheye)中也是可见的,那就更好了。我不会修改输入错误,因为用户界面不允许我。s/翻译/翻译/
shortname = Long Name <email@example.com>
anothername = Another Long Name <email2@example.com>
...