git-svn以另一种方式推送现有存储库映射用户名

时间:2010-07-27 13:06:37

标签: git-svn username dcommit

我和我的团队目前正在开展大学项目。我们得到了这个项目,但还没有正式开始,所以我们开始在GIT工作以获得先机。该项目的协调员现在强迫我们使用SVN,所以我试图使用git-svn来连接两个存储库。

我可以通过.git / info / grafts将我们的提交移动到svn存储库中,这不是问题。

我的问题是,在我们的课程中,我们会根据我们的提交历史给出参与标记。然而,显然我们所有的提交都有我的svn用户名,因为我把它们移动了(我不确定会非常喜欢我的队友)。

我查看了git authors文件,但据我所知,它只用于反向查找。

现在我明白使用ssh + svn我显然需要他们的ssh登录(我们可能愿意去这个极端)来欺骗这些信息,但是我可以通过file://访问存储库

总结一下:

我需要“git svn dcommit”将git作者映射到他们各自的svn用户名,如果可能(不太重要)将日期信息正确。 有一点需要注意的是git上的一些作者有多个git作者(已经提交过),所以我需要能够将多个git作者映射到一个svn用户名。

提前感谢您提供的任何帮助:)


3 个答案:

答案 0 :(得分:2)

如果您具有对存储库的文件访问权限,则可以使用自己的凭据将所有提交推送到subversion,然后使用命令行修订属性编辑器更改与其他人提交的提交相关联的用户名:

svn propset --revprop -r$REV svn:author $USER

您需要对此进行文件访问,因为默认的rev-prop更改挂钩不允许所有更改,并且提供的模板将仅允许更改日志消息,而不允许更改作者,因此您需要将pre-revprop-change-hook设置为允许你的更改。

答案 1 :(得分:1)

有关此问题的更全面答案,请参阅https://stackoverflow.com/a/677843/97627。简短的总结是,它是可能的,您需要设置作者文件。

答案 2 :(得分:0)

要做到这一点,你需要拥有每个茶友的帐户名和登录,并重新提交所有提交(通过脚本)并不断推送到相应的提交。

为什么不提交git author statistics进行评估?