git svn克隆非标准存储库存在问题 背景
我正在使用一个巨大的SVN存储库(完整克隆约20Gb),它具有以下顶级结构:git svn克隆非标准存储库存在问题 背景,git,svn,version-control,git-svn,Git,Svn,Version Control,Git Svn,我正在使用一个巨大的SVN存储库(完整克隆约20Gb),它具有以下顶级结构: stuff stuff/branches stuff/tags stuff/trunk stuff/archive stuff/build stuff/machines stuff/releases 第一点:我不知道[archive,machines,build&releases]目录中包含哪些内容,老实说——我真的不在乎——我只知道我不需要将它们存储在本地来进行开发工作 第二点:除了用于存储工件的愚蠢目录之外,表面
stuff
stuff/branches
stuff/tags
stuff/trunk
stuff/archive
stuff/build
stuff/machines
stuff/releases
第一点:我不知道[archive,machines,build&releases]目录中包含哪些内容,老实说——我真的不在乎——我只知道我不需要将它们存储在本地来进行开发工作
第二点:除了用于存储工件的愚蠢目录之外,表面上这看起来像是一个标准的SVN布局。但是,当您深入挖掘时,会发现很奇怪,因为主干目录包含多个项目,例如:
stuff/trunk/mars
stuff/trunk/earth
stuff/trunk/venus
stuff/trunk/saturn
stuff/trunk/pluto
...
“分行”文件夹的组织方式如下所述:
stuff/branches/<project>-<name of project branch>
我的问题是,我无法使用git svn复制它。我尝试过无数次使用不同的选项来“git svn克隆”,每次我都会克隆整个repo(~20Gb)或什么都不克隆。当然不应该这么难,所以我一定是做错了什么
如果我能够只克隆pluto项目的git svn,当我使用git svn创建一个新分支时,我还希望它为我创建一个svn分支,例如,我希望以下命令等效:
svn copy https://svn.example.com/svn/stuff/trunk/pluto \
https://svn.example.com/svn/stuff/branches/pluto-1234 \
-m "Making branch pluto-1234 from /stuff/trunk/pluto"
git svn branch -m \
"Making branch pluto-1234 from /stuff/trunk/pluto" \
pluto-1234
以便在以下位置创建新的SVN分支:
stuff/branches/pluto-1234
pluto-.*
是用于选择所需分支的正则表达式。请参见谢谢。。。。你的提示帮助我想出了解决这个问题的办法!我发出的命令是:git svn init--trunk=trunk/pluto--branchs=branchs/*--include path=branchs/pluto-*--prefix=git svn/pluto
svn copy https://svn.example.com/svn/stuff/trunk/pluto \
https://svn.example.com/svn/stuff/branches/pluto-1234 \
-m "Making branch pluto-1234 from /stuff/trunk/pluto"
git svn branch -m \
"Making branch pluto-1234 from /stuff/trunk/pluto" \
pluto-1234
stuff/branches/pluto-1234
git svn clone --trunk stuff/trunk/pluto --branches stuff/branches --include-paths='stuff/branches/pluto-.*'