我正在从SVN(cloudforge)迁移到Git(bitbucket)。我希望在迁移期间使用git-svn将SVN与Git单向同步 - 如Atlassian's migration tutorial所述。
我们的单个SVN仓库已用于跟踪多个项目,其中所有项目都处于相同的发布计划中。我们SVN存储库的最终结构与我能够找到的任何示例不同:
/project_A <- trunk
/project_B <- trunk
/project_C <- trunk
/branches/2013-12-20/project_A_2013-12-20
/branches/2013-12-20/project_B_2013-12-20
/branches/2013-12-20/project_C_2013-12-20
/branches/2014-03-19/project_A_2014-03-19
/branches/2014-03-19/project_B_2014-03-19
/branches/2014-03-19/project_C_2014-03-19
当我们转移到Git时,我希望每个项目都在其自己的Git存储库中,因为每个项目都非常大,并且彼此完全无关(除了相同的分支/发布时间表)。我也想采用Gitflow Workflow,它会给我一个像以下结构:
project_A存储库:
/master
/develop
/release/2014-03-19
(对于project_ [B,C] Git存储库也是如此。
是否可以使用 git svn clone ,因为我希望存储库结构如此彻底地改变?如果没有,在保持修订历史的同时,移动到我的新Git存储库的最佳行动是什么?
答案 0 :(得分:0)
我至少看到两种不同的方式
svnadmin dump
)svndumpfilter include --pattern ...
(SVN 1.7 +)-s
git svn clone
选项将完成所有操作).git/config
部分的[svn-remote]
部分内为需要的分支准备正确的fetch-references规范:它可以是通配符,枚举或只是所有分支的集合(参见Git-SVN page)上的样本