对于Mercurial,我们可以推出一些变更集而不是推动一些吗?

时间:2010-10-25 15:25:59

标签: mercurial

如果我们多次提交,例如,我们的本地仓库,修订版3000,3001,3002,3003。如果我们推送到远程仓库,它将推动3000到3003.有没有办法只推3000和3001?

3 个答案:

答案 0 :(得分:39)

是的,您可以选择要推送的修订版。 hg push -r 3001(所选修订版的所有祖先都将被推送;您不需要指定3000。)

答案 1 :(得分:9)

如果你需要在没有所有祖先的情况下推送一些变更集(@Woolble's answer中描述的解决方案),一个好的选择是使用Mercurial Queues扩展(MQ)。

https://www.mercurial-scm.org/wiki/MqExtension

这将允许您重新排序甚至组合变更集,以便您可以按照您喜欢的顺序推送它们。这需要一些工作才能开始,但你会发现它值得付出努力。

我的TortoiseHg使得使用MQ非常简单。

答案 2 :(得分:8)

对于那些使用UI和类似图片的人:

  1. In TortoiseHg点击255按钮。 enter image description here

  2. 在要推送的修订版上单击鼠标右键。

  3. 选择Detect outgoing changes toenter image description here

  4. 结果:您将仅推送选定的版本而不是所有内容。 enter image description here

    希望这可以节省你一些时间。