回答
你检出了http://git-scm.com/docs/git-svn我不知道这是否能解决你的问题,但它是一种同步git和svn的方法。
-CJ
是的,那是可能的。使用Git's SVN features导入到存储库。然后你可以从那里推回来。不过,大多数情况下,git可以有效地显示SVN历史,而SVN可以显示git历史。
如果你的git历史是线性的,你可以尝试使用git-svn。 我会尝试使用“git svn clone”将现有(空的)SVN存储库导入到git中,然后将您现有的git历史记录重新绑定到该git历史记录上,并将它“git svn dcommit”。
如果你的git历史不是线性的(包含分支和合并),你将无法在SVN中正确表示它。在这种情况下,我强烈建议您使用基于git的托管解决方案(例如github.com)。
我在目前的工作中遇到过这种情况。我们的主要Git存储库具有非线性历史记录,所以选择的解决方案应该处理此问题似乎迄今为止工作的解决方案基于gitsvn代理存储库。我已经安装在主Git仓库后,收到钩,在它的核心有这样的事情:
export GIT_DIR=$GITSVN_PROXY_DIR/.git
git pull -Xtheirs file://$GIT_PRIMARY_DIR master
git svn dcommit
后dcommit日志历史被改写。在来自主Git仓库的下一个git pull中,您通常会遇到冲突。这就是他们的选择 - 他们的选择开始。这是一个有利于远程版本变化的合并策略。在这种情况下,它允许我们自动解决冲突! :)
唯一的缺点:漂亮的SVN提交消息不是免费的。一些git hacking需要使它们包含来自主Git提交消息的所有信息。
我怀疑这可能与code.google.com,但你可以设置你自己的Subversion存储库,并安装SubGit到它。
只要安装完成,您就有一对链接的Subversion和Git存储库。任何存储库中的每个修改都会触发一个SubGit挂钩,它会自动转换所有必要的更改。请致电documentation和git-svn comparison。
SubGit是一个商业产品,但对于开源项目,您可以获得免费的许可证。
- 1. svn仓库的只读git镜像
- 2. 将git的主分支镜像到SVN
- 3. 如何在使用svn repo的git镜像时找到svn修订版的git哈希值?
- 4. 同时使用Git svn的
- 5. 如何使用Git svn的
- 6. 使用git-svn与现有的回购缺乏.git/svn/
- 7. git-svn-rebase正在使用SVN标记
- 8. SVN to Git使用svn-migration-scripts
- 9. Git svn不使用svn凭证
- 10. 同时使用Git和SVN
- 11. git svn使用jgit获取
- 12. 使用git-svn获取svnversion
- 13. 使用git svn编辑svn:externals
- 14. git:在合并时使用git-svn
- 15. 有没有办法使用git-svn镜像Git repo到SVN并让Git标签/分支变成SVN标签/分支?
- 16. 迁移从SVN /鱼眼镜头到Git的 - 同步不工作
- 17. 使用git-svn而不添加git-svn-id
- 18. 我已经导入使用Git SVN GIT中svn库移动
- 19. 将SVN签出转换为使用git(git-svn)
- 20. Raspberry PI上的SVN镜像
- 21. 使用git-svn的代码页
- 22. 不完整的克隆使用Git SVN
- 23. 使用git-svn:正确的工作区
- 24. git-p4 vs git-svn
- 25. git-svn dmitmiting git commit
- 26. Git镜像问题
- 27. Git本地镜像
- 28. 的Git SVN克隆不使用SVN仓库
- 29. 使用git-svn与稍微奇怪的svn布局
- 30. 使用git-svn创建一个新的svn分支
你愿意分享你最后一段中提到的Git吗? – 2012-11-01 15:29:20