[英]How to properly initialize git-svn clone of a repository with nonstandard layout?
[英]How to clone a nonstandard svn repo to git?
我尝试将svn repo克隆到git,但是一些分支在svn根目录中,如下所示。
我试过了
$ git clone svn://url/svn-root -T trunk -b branches -b branch1 -b branch2
和
$ git clone svn://url/svn-root -T trunk -b branches -b .
两者都无法正确克隆branch1
和branch2
。 请帮忙。
svn-root
├── branch1
├── branch2
├── branches
│ ├── branch3
│ └── branch4
└── trunk
在GitMinutes第20集中提到的一个有趣的工具是SubGit ,它是Atalssian Stash的插件(它不是免费的,但你可以免费试用)。
您可以在“ GitMinutes#22:Alexander Kitaev关于SubGit ”中了解更多有关SubGit的信息 。
它旨在管理非传统的svn repo布局。
你应该进入“分支”字段:
*:refs/heads/*;branches/*:refs/heads/branches/*
# instead of
branches/*
在这种情况下,
branch1
将被转换为refs/heads/branch1
,
branch3
--- torefs/heads/branches/branch3
。或者,如果您具有有限数量的顶级分支,则可以显式枚举它们:
branch1:refs/heads/branch1;
branch2:refs/heads/branch2;
branches/*:refs/heads/branches/*
我想到两个选择:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.