hg bundle revset - 未找到更改

hg bundle revset - not change found

我们正在尝试捆绑存储库的一部分。

以下命令:hg bundle -r 1:11 bundle.hg 产生输出 "Searching for changes. No change found"。

如果我们用另一个命令重用相同的 revset,hg log -r 1:11 会显示预期的变更集列表。

使用 hg bundle -a bundle.hg 效果很好。

在 Windows 7.

上使用 HG 3.8.4

hg bundle's documentation中,有如下一段话:

To create a bundle containing all changesets, use -a/--all (or --base null). Otherwise, hg assumes the destination will have all the nodes you specify with --base parameters. Otherwise, hg will assume the repository has all the nodes in destination, or default-push/default if no destination is specified.

它读起来有点像嵌套的 if 语句,所以让我解释一下。

  • 如果您指定 -a--all(或单独指定 --base null),您将捆绑所有变更集

  • 如果您没有指定 -a--all,您可以使用 --base

  • 如果您没有执行上述任何操作,Mercurial 会假定变更集存在于指定的目的地(如果有),或者 default-push/default

您的尝试 hg bundle -r 1:11 bundle.hg 属于最后一类,我怀疑 revset 中的所有节点都存在于 default-push/default。

尝试将您的命令修改为 hg bundle -r 1:11 --base null bundle.hg