2012-06-04 70 views
12

我做创建的SVN仓库的混帐镜的git的一面镜子:更新的SVN仓库

  • 在github
  • 的mkdir镜& &光盘镜像
  • 混帐svn的初始化创建一个新的回购[SVN URL]
  • 的git svn的取-rHEAD
  • git的远程添加原点[github上URL]
  • 的git svn的变基
  • 混帐推起源主

这个伟大的工程,我可以简单地更新它:

  • 混帐SVN变基
  • 混帐推起源主

但是,如果我搬到另一台电脑并想更新它,我试过了:

  • GIT中克隆[github上URL]
  • 的git svn的初始化[SVN URL]
  • 的git svn的取-rHEAD
  • git的远程添加原点[github上URL]
  • 的git svn的变基

但在这里我得到:

“无法确定工作树历史记录中的上游SVN信息”

任何人都可以解释正确的方法来做到这一点?

+1

实际上只能推SVN的主干分支回购git的主分支,问题是如何推动所有svn分支到远程git回购? – hugemeow

回答

10

我有同样的需求,并最终发现了这个范例:

http://rip747.wordpress.com/2009/06/17/reviving-a-git-svn-clone/

要回答你的问题的情况下:

git clone [github url] 
cd repo 
git svn init [svn url] 
git update-ref refs/remotes/git-svn refs/remotes/origin/master 
git svn rebase 
+0

嗡嗡声我得到了一个错误“无法确定工作树历史记录中的上游SVN信息” –

+4

通过将'/ trunk'追加到svn url来解决 –