【问题标题】:Why hg does not clones correctly the repository?为什么 hg 不能正确克隆存储库?
【发布时间】:2015-05-29 00:43:10
【问题描述】:

我有一个将被克隆的存储库。 我转到存储库的目录并键入以下命令以获取分支。

hg branches

作为结果,我得到了

blank                          0:4d82003d3fc7

我还使用

获得了存储库的大小
du -sh ./

打印出来

312M    ./

此存储库包含以下内容。

ls -a
.  ..  dummy  .hg  .hglf

现在当我使用这个命令克隆它时

hg clone /path/libname -r blank

我得到了新的存储库,它的大小只有52 kbts,它包含

.  ..  dummy  .hg  .hglf

我也克隆它没有-r blank 选项

hg clone /path/libname

并得到相同的结果。我想如果存储库有 312M 大小,那么克隆的存储库也应该有相当的大小。哪里出了问题?

【问题讨论】:

  • blank 分支是否仅在修订版 0 中?因为hg branches 的输出似乎表明了这一点。
  • 是的,这里只有一个修订版 0。
  • 那么一个修订版包含 312MB 的数据?

标签: mercurial repository branch clone


【解决方案1】:

原始存储库有一个“.hglf”文件。这表明(很可能)它使用“大文件”。大文件存储在服务器上,并且只有在您更新到该版本时才会下载特定版本。有几种可能:

  1. 您不在使用大文件的修订版上。更新到那个,你会看到更大的尺寸。

  2. 您没有启用“大文件扩展”。启用它并尝试再次克隆,您应该会看到不同之处。要启用大文件,请添加到您的 .hgrc:

    [extensions] largefiles =

从 Mercurial 3.4(撰写本文时尚未发布)开始,在克隆包含大文件的存储库时将自动启用大文件扩展。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-25
    • 1970-01-01
    • 2012-08-16
    • 2010-10-23
    • 1970-01-01
    相关资源
    最近更新 更多