【问题标题】:Mercurial : how to deal with rejected pull request?Mercurial:如何处理被拒绝的拉取请求?
【发布时间】:2014-11-21 20:38:52
【问题描述】:

至少:如何干净地处理它?

目前,我知道的唯一工作流程是:禁止您的克隆 + 从主存储库重新分叉。 这真的很不理想......

另一个选项是与主 repo 的提示合并,或退出您的变更集。 但是如果你这样做,回退是否会出现在后续的拉取请求中?

如果是这样,那么用被拒绝的变更集和它们的退出来污染主仓库会很尴尬......

正确的工作流程是什么?

【问题讨论】:

    标签: mercurial bitbucket pull-request


    【解决方案1】:

    视情况而定。

    如果您的分叉是公开的,或者您想保留拒绝,则类似这样的工作流程可能是理想的:

    1. 更新到提示并执行hg ci --close-branch
    2. 如有必要,从主存储库中拉取。
    3. 更新到属于主存储库的最新变更集,并在那里完成所有工作。
    4. 如果您的 repo 正在使用 @ 书签,请将其移至新的 head。

    如果您的 fork 不是公开的,您可以简单地剥离不再需要的变更集。在您的存储库设置中查找“strip changesets”选项。您还需要在回购的每个克隆上本地执行hg strip;活动提要将提供要使用的精确命令。

    如果您碰巧使用的是实验性 Evolve 扩展程序,则可以hg prune 不需要的变更集,而不是上述过程。这将使它们留在身边,但将它们从历史中隐藏起来并防止它们被推或拉(在大多数情况下)。这是(旨在成为)您可以对共享变更集执行的“安全”操作。如果有人从您的存储库中提取,变更集也将在其存储库中自动修剪。要撤消,请参阅hg touch 命令。

    注意:当您剥离变更集时,Bitbucket 不会备份它们。请小心。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-20
      • 1970-01-01
      • 1970-01-01
      • 2018-11-30
      相关资源
      最近更新 更多