Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/25.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 - Fatal编程技术网

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

git-如何克隆本地svn存储库的子文件夹,git,svn,version-control,Git,Svn,Version Control,我的问题可能与你有关,但我不能完全实现我想要的 我们有一个旧的本地SVN存储库。它看起来像一个单独的存储库,但在此存储库下有多个不同的项目,如: project1/ project1_subproject1/ project1_subproject2/ project1_subproject3/ project2/ project2_subproject1/ project2_subproject2/ project2_subproject3/ .

我的问题可能与你有关,但我不能完全实现我想要的

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

project1/
    project1_subproject1/
    project1_subproject2/
    project1_subproject3/
project2/
    project2_subproject1/
    project2_subproject2/
    project2_subproject3/
...
我试图
gitsvn克隆
只是其中一个子项目,而不是整个存储库,但我真的不知道如何做到这一点

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

我尝试了git svn克隆file:///home/user/projects/subversion/project2/project2_subproject1但显然这是失败的

我还尝试了git svn克隆--trunk=project2/project2\u子项目1file:///home/user/projects/subversion/,但这也失败了

两次尝试都会导致
W:忽略来自SVN的错误,路径可能不存在:(160013):文件系统没有项:未找到文件:

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


有什么帮助吗?

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

最简单的方法可能是:

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

关于最后一步,请参见

如果使用http路径而不是使用此路径,该怎么办?看到你正在使用的操作系统了吗?嗨,我正在使用ubuntu 16.04的命令
git svn clonefile:///home/user/projects/subversion/project2/project2_subproject1
也适用于linux。请确保
project2
文件夹位于svn回购的根目录下(不在
trunk/
branchs/
等下)。如果在命令中添加选项
--无元数据
,会怎么样?