git svn克隆是否创建空git存储库?

git svn克隆是否创建空git存储库?,git,svn,clone,git-svn,Git,Svn,Clone,Git Svn,我正试图使用这个命令将SVN repo的最后100个版本拉入本地git repo(在Windows上) git-svn克隆http://... -r 100 出于某种原因,结果签出是空的,而不是.git文件夹 但是如果没有-r参数,它工作得很好(尽管从时间的黎明开始检查所有内容) 有人知道发生了什么吗 谢谢 建议使用以下命令: git svn clone -s -r rev:HEAD your_svn_server -s很重要,因为它遵循svn推荐的存储库布局(通常是标记、主干和分支)。对于g

我正试图使用这个命令将SVN repo的最后100个版本拉入本地git repo(在Windows上)

git-svn克隆http://... -r 100

出于某种原因,结果签出是空的,而不是.git文件夹

但是如果没有-r参数,它工作得很好(尽管从时间的黎明开始检查所有内容)

有人知道发生了什么吗


谢谢

建议使用以下命令:

git svn clone -s -r rev:HEAD your_svn_server

-s很重要,因为它遵循svn推荐的存储库布局(通常是标记、主干和分支)。

对于git svn,-r参数指的是svn中的版本号,而不是所需的版本号

此摘录自'git help svn'命令,显示了对-r选项的以下描述:

   -r <arg>, --revision <arg>
       Used with the fetch command.

       This allows revision ranges for partial/cauterized history to be supported. $NUMBER, $NUMBER1:$NUMBER2 (numeric ranges),
       $NUMBER:HEAD, and BASE:$NUMBER are all supported.

       This can allow you to make partial mirrors when running fetch; but is generally not recommended because history will be skipped
       and lost.
或者,如果您只需要最新版本,而不需要获取任何版本历史记录:

git svn clone -r HEAD http://...
注意:您还可以使用-s选项为您的SVN存储库指定标准的主干/分支/标记布局,但是这只有在克隆整个存储库历史时才有意义。在使用SVN分支时,我发现从您感兴趣的分支开始克隆存储库更有效。例如:

git svn clone -r HEAD http://.../branches/mybranch

我假设在
svn
中,
-r
不是“最后100次修订”,而是修订号100。您可以检查当前修订号是多少,减去100,然后签出
-r(该编号):HEAD
。不过,一般不建议使用局部镜像。为了记录在案,我也遇到了类似的问题,当使用
-r 100
-r 100:HEAD
没有帮助时,
-r HEAD
出于某种原因使用了这个技巧。谢谢
git svn clone -r HEAD http://.../branches/mybranch