2

我不明白为什么在应用补丁时 Mercurial 不允许我推送。从我的角度来看,应用的补丁只影响当前工作空间,而推送不受当前工作空间状态的影响。

换句话说,我希望如果我做了一些提交,然后启动一个补丁队列,然后推送将推送这些提交,并忽略补丁发生的任何事情。

我意识到这可能一个很好的理由,而且我对 mq 如何工作的理解是错误的。那么我错过了什么?为什么 Hg 不能只推送当前的传出提交?

4

1 回答 1

2

您可以通过将 MQ 变更集设为机密来解决此问题。最简单的方法是在您的 中添加适当的设置.hgrc,即:

[mq]
secret = true

这将自动将所有 mq 补丁设为机密。有了它们的秘密,您应该能够正常推送剩余的提交而不会收到错误消息。

现有的 mq 补丁可以用hg phase -f -s <rev>.

于 2015-05-10T21:55:36.930 回答