将本地文件夹连接到 Mercurial 存储库

Mat*_*ean 4 mercurial bitbucket

我有一个本地文件夹,我知道它是tip我的存储库的.hg文件夹,但该文件夹不存在,有没有办法将它“连接”到存储库而不必再次克隆整个存储库?

我所做的不是从 bitbucket 克隆 repo,而是单击下载源为 zip。但是 zip 文件不包含.hg文件夹,只包含源文件。那么有没有办法将这个本地文件夹连接回 repo?

我会hg clone ...再次运行正常,但是这个 repo 是 >8GB 并且那个 zip 需要很长时间才能下载!

Mar*_*ler 5

不,您需要完整的.hg文件夹才能以有意义的方式使用存储库。

您下载的 8 GB zip 文件只是一个修订版。历史记录的大小可能相似。例如,OpenOffice 存储库有一个 2.0 GB 的工作副本和一个 2.3 GB 的存储库。因此,存储 270,000 个变更集需要 15% 的开销!换句话说:通常最好只克隆所有内容而不是检查单个修订。

当您运行时,hg clone您只是在下载.hg文件夹。Mercurial 将默认检出工作副本中的最新版本。如果让您担心的是结帐步骤,那么使用hg clone -U无需结帐即可获得回购。现在将.hg文件夹移动到现有文件夹中并运行

$ hg debugsetparents tip
Run Code Online (Sandbox Code Playgroud)

告诉 Mercurial 您已经手动复制了tip修订版的文件。