问题
如何使用来自Subversion存储库的git-svn创建浅表副本,例如,如何仅提取最后三个修订版?
git clone如果您使用该选项--depth,该命令可以从Git存储库获取最后n个修订版,即您获得存储库的浅表副本.例:
git clone --depth 3 git://some/repo myshallowcopyrepo
Run Code Online (Sandbox Code Playgroud)
git-svn有类似的选择吗?
到目前为止我的发现
到目前为止,我只找到了-rN选项在哪里N进行修改.例:
git svn clone -rN svn://some/repo
Run Code Online (Sandbox Code Playgroud)
根据文档,有可能使用-r$REVNUMBER:HEAD.我尝试了以下内容来获取最后3个修订版,它们返回了一条错误消息.
$ git svn clone --prefix=svn/ -s -rHEAD~3:HEAD http://some/svn/repo .
revision argument: HEAD~3:HEAD not understood by git-svn
Run Code Online (Sandbox Code Playgroud)
所以我用HEAD~3第三个但最后一个修订版534的实际数字替换了.这有效,但这要求我首先找出第三个但最后一个提交的修订号.
$ git svn clone --prefix=svn/ -s -r534:HEAD http://some/svn/repo .
Run Code Online (Sandbox Code Playgroud)
文档
我在我们的svn存储库中使用git-svn.然而,回购是巨大的,所以我首先检查项目,如下:
git svn clone svn://svn.server.com/project -s -r 12000:HEAD
Run Code Online (Sandbox Code Playgroud)
所以,现在我只修改了当前版本的12000.我想查看一些更多的修订,但以下什么都不做:
git svn fetch -r 11000:HEAD
Run Code Online (Sandbox Code Playgroud)
有没有办法获取较旧的版本?