将git-svn与缺少.git / svn /的现有repo一起使用

时间:2010-07-08 21:23:41

标签: svn git git-svn

我使用Git克隆了项目的源代码,Git在服务器上从SVN repo转换。这个Git存储库的问题是它缺少标签,分支,并且缺少一些修订。对于我来说,使用git-svn克隆的修订数量是巨大的(~20000),这会浪费带宽和时间,因为我已经拥有了本地仓库中的大多数对象。因此,我想知道:

  • 如何将我的Git存储库转换为git-svn存储库,直接从SVN存储库进行更新,而不是使用损坏的Git存储库进行更新。
  • 我可以在不必克隆所有内容的情况下获取缺少的修订吗?
  • 是否可以直接使用Git下载标签?
  • 这些分支会是一个额外的问题吗?

1 个答案:

答案 0 :(得分:8)

  • 让git-SVN接管您的克隆很容易;只需使用您在原始仓库中使用的相同参数运行git svn init,然后您的git svn fetch应找到回购中的现有提交。

  • 如果没有严格的回购手术,就无法添加分支:您必须重写大部分历史记录以包含跨分支合并。

  • 拉入标签很容易,我相信可以在最初的回购克隆之后完成。