Apache Lucene 存储库的 SVN 转储
Posted
技术标签:
【中文标题】Apache Lucene 存储库的 SVN 转储【英文标题】:SVN dump of Apache Lucene’s repository 【发布时间】:2011-01-18 18:13:35 【问题描述】:我想获取Apache Lucene’s repository 的 SVN 转储。如何将上面的 repo 复制到我的本地机器上?
【问题讨论】:
【参考方案1】:一种选择是首先创建一个本地存储库:
$ svnadmin create /path/to/your/repo
创建存储库后,对其进行初始化以进行同步:
$ svnsync init /path/to/your/repo /path/to/source/repo
现在您已设置好进行同步,请同步到新的存储库:
$ svnsync sync /path/to/source/repo
如果您不想保留整个存储库,因为您只需要一个子目录,但您仍然希望 subversion 中的整个历史记录,那么您可以创建一个仅包含相关部分的存储库:
$ svnadmin dump /path/to/your/repo | svndumpfilter include /path/to/correct/tree \
> /path/to/filtered/repository/backup
我们现在有一个已过滤为仅包含相关树的备份。所以,现在让我们将它恢复到一个新的可用存储库:
$ svnadmin load --ignore-uuid /path/to/treeonly/repository \
< /path/to/filtered/repository/backup
请参阅 svnsync、repository replication 和 repository filtering 上的帮助。
【讨论】:
因为 apache lucene 不是根文件夹。 svnsync 无法工作。有没有其他方法可以只复制项目转储而不是整个 repo 转储。【参考方案2】:克隆整个 Subversion 项目(具有完整历史记录)的一种方法是使用 Git's Subversion bridge:
git svn clone http://svn.apache.org/repos/asf/lucene/dev/trunk lucene
默认情况下,这将获取 Subversion 中主干的全部历史记录。请注意,根据 Subversion 存储库的大小、寿命和复杂性,此命令可能需要一些时间才能运行。
【讨论】:
Git 非常擅长这一点。我相信 Mercurial 也有类似的选择。【参考方案3】:你可以使用svn命令行工具。
svn export http://svn.apache.org/repos/asf/lucene/dev/trunk/
或
svn co http://svn.apache.org/repos/asf/lucene/dev/trunk/
如果您想要断开连接的转储,请使用第一个。如果要更新和提交,请使用第二个。
【讨论】:
我需要完整的回购历史转储。这样我就可以用这个设置本地仓库了。以上是关于Apache Lucene 存储库的 SVN 转储的主要内容,如果未能解决你的问题,请参考以下文章