git - 如何克隆本地svn存储库的子文件夹

时间:2017-08-23 05:59:00

标签: git svn version-control

我的问题可能与git - how can I clone local svn repository?有关但我无法达到我想要的目标。

我们有一个旧的本地SVN存储库。它看起来像一个存储库,但此存储库下有多个不同的项目,如:

project1/
    project1_subproject1/
    project1_subproject2/
    project1_subproject3/
project2/
    project2_subproject1/
    project2_subproject2/
    project2_subproject3/
...

我正在尝试git svn clone只有一个子项目,而不是整个存储库,但我真的不知道该怎么做。

主存储库位于:/home/user/projects/subversion/

我试过了git svn clone file:///home/user/projects/subversion/project2/project2_subproject1,但显然失败了。

我也试过git svn clone --trunk=project2/project2_subproject1 file:///home/user/projects/subversion/,但也失败了。

两次尝试都会产生W: Ignoring error from SVN, path probably does not exist: (160013): Filesystem has no item: File not found:

注意:我已经设法使用git svn clone file:///home/user/projects/subversion/将整个subversion存储库克隆到一个git存储库中,但这不是我想要的。

请帮忙吗?

1 个答案:

答案 0 :(得分:1)

克隆整个svn存储库,复制并清理

可能最简单的方法是:

  • 克隆完整的SVN存储库
  • 复制克隆的存储库N次,其中N是独立项目的数量
  • 清理每个单独的git存储库,这样只剩下一个项目

最后一步,请参阅Remove folder and its contents from git/GitHub's history