2

我怎样才能只从父仓库中推送子仓库所需的 HEADS。

我已经开始对 mercurial 中的本地功能分支使用书签样式流程。到目前为止,它工作得很好,只需提交、添加书签并切换到该头部即可工作。hg push -r master-bookmark我可以通过指定只推我的主头而不是任何功能分支来很好地推拉。

当我在子存储库中使用带有书签的多个头时,问题就出现了。因为这意味着我不能只使用hg push -r master-bookmark它,因为它会尝试推动子回购的所有负责人。在我准备好之前,我不希望这些头公开,但我需要在父级内部进行一些其他更改,所以我不会强迫他们。

我已经尝试放入子存储库并推送我需要的东西,但是父母仍然会尝试推送所有内容,无论它是否在“.hgsubstate”的祖先中。

有人对哪种工作流程最适合这个有任何想法吗?我宁愿不必禁用子回购,推送,然后重新启用,这会变得非常混乱。

4

1 回答 1

4

您可以利用phases使这种工作流程变得非常简单的功能。

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

当您进行分支/书签/提交阶段secret时,除非您明确这样做,否则它不会被推送。这是标记尚未准备好共享的工作的好方法。

于 2013-01-07T20:40:26.760 回答