Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
git svn克隆非标准存储库存在问题 背景_Git_Svn_Version Control_Git Svn - Fatal编程技术网

git svn克隆非标准存储库存在问题 背景

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]目录中包含哪些内容,老实说——我真的不在乎——我只知道我不需要将它们存储在本地来进行开发工作 第二点:除了用于存储工件的愚蠢目录之外,表面

我正在使用一个巨大的SVN存储库(完整克隆约20Gb),它具有以下顶级结构:

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-.*'