2012-07-16 74 views
1

从历史上看,开源项目的所有者使用svn并希望继续使用svn。 新用户希望使用github来使用所有DVCS和github工具一起工作。让github与svn同步

我们可以获得svn并定期向github提交,但在这种情况下,我们会放弃svn提交和评论。

是否有可能有一个自动系统接受新的svn提交,然后用username和comments重新创建github中的所有提交?

我们不需要把我们的修改放回到svn(没有提交svn,svn只是为我们读取)。

+0

您是否知道'git-svn'?http://www.kernel.org/pub/software/scm/git/docs/git-svn.html – 2012-07-16 08:54:34

回答

2

您可以在您的SVN服务器上安装SubGit。然后创建SVN存储库的Git接口。您只需设置对新创建的Git存储库的读/写访问权限即可。 推送到Git接口的每个提交都被转换为SVN修订,反之亦然。 SubGit关心并发性。所以这个Git接口可能会被新人使用。

如果您需要GitHub上的只读镜像,您可以在某个cron脚本中运行“git push --all --tags”以从本地Git界面推送到GitHub。

不幸的是,我不知道任何允许推送到GitHub的并发安全解决方案,并且允许其他开发人员同时提交到本地SVN存储库,而不会让SVN和GitHub历史分歧。