Mercurial:如何处理被拒绝的拉动请求?

时间:2014-11-21 20:38:52

标签: mercurial bitbucket pull-request

至少:如何干净利落地处理它?<​​/ p>

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

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

如果是这样,那令人尴尬的污染主要回购与被拒绝的变更集及其退出......

正确的工作流程是什么?

1 个答案:

答案 0 :(得分:2)

取决于。

如果你的分叉是公开的,或者你想保留拒绝,那么像这样的工作流程可能是理想的:

  1. 更新提示并执行hg ci --close-branch
  2. 如有必要,从主存储库中提取。
  3. 更新到属于主存储库的最新变更集,并在那里完成所有工作。
  4. 如果您的回购正在使用@书签,请将其移至新头。
  5. 如果您的前叉不公开,您只需删除不再需要的更改集即可。在存储库设置中查找“strip changesets”选项。您还需要在repo的每个克隆上本地执行hg strip;活动供稿将提供准确的使用命令。

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

    注意:Bitbucket在剥离时不会备份更改集。请小心。