克隆是获取Mercurial存储库内容的唯一方法吗?

时间:2009-02-12 12:01:19

标签: mercurial

我试图通过运行来获取Netbeans IDE的源代码:

hg clone http://hg.netbeans.org/main/

然而,这似乎是永远的,它并没有给我任何状态,告诉我下载完成的百分比。如果失去我的互联网连接,我必须重新开始。

我意识到Mercurial是一个分布式源代码控制系统,也许'clone'命令花了这么长时间,因为它获取了所有文件的整个历史记录(这是正确的吗?)

当我们从CVS获取资源时,我们通常会获得没有完整历史记录的资源。是否可以使用Mercurial做这样的事情?

2 个答案:

答案 0 :(得分:7)

Mercurial的hgweb可以是configured to allow download of snapshots,例如,

  

确保您的存储库的.hg / hgrc文件(或/home/user/.hgrc文件)包含allow_archive设置:

     

[网络]
  allow_archive = gz,zip,bz2

     

此示例说明了如何支持gzip,zip和bzip2存档格式。因此,链接应出现在与这些存档类型对应的Web界面中。

但是,它看起来不像您尝试下载的存储库允许此操作模式。您可以要求他们添加它。

答案 1 :(得分:3)

可能是clone -verbose可以为您提供有关出错的详细信息吗?

C:\netbeans-src>hg clone --verbose http://hg.netbeans.org/main
destination directory: main
requesting all changes
adding changesets
adding manifests
adding file changes

如果没有错误,您可以考虑Shallow clone不从服务器提取整个历史记录,而只是从给定修订版开始的子集。
正如Ry4an所提到的,这是一个“alpha扩展”,并不是一个长期的解决方案。