当目标分支被删除时,现有的拉取请求会发生什么?

smg*_*smg 5 git github

想象一下您有 3 个分支的情况:master, my_feature, my_feature_fix

然后执行以下操作:

  • 打开一个 Pull-Request 以合并my_feature_fixmy_feature.
  • 同时,my_feature被合并到master分支被删除。

my_feature_fix因为my_feature不再存在的公开 PR 会发生什么?

smg*_*smg 5

试了一下,结果如下:

  • 如果my_feature被合并到master没有被删除,那么my_feature_fix进入的开放PRmy_feature仍然存在,仍然可以合并到现有my_feature分支中。
  • my_feature_fixPR处于打开状态时,GitHub 界面会阻止您删除my_feature分支:“您无法删除此分支,因为打开的拉取请求依赖于它。”
  • 如果该分支被强行删除 ( git branch -d my_feature),则其打开的 PRmy_feature_fix会自动关闭并标记为“已关闭并提交未合并的提交”。

  • 这又发生了变化。现在,针对已删除分支的开放 PR 会自动重新定位到它合并到的分支,并且会显示“基本自动更改自”。 (5认同)
  • 看起来这已经改变了,因为现在 GitHub 界面确实允许您删除分支,并关闭任何以分支为目标的开放拉取请求(没有警告)。另请注意“因未合并的提交而关闭”。是出现在拉取请求页面上的文本,而不是您可以搜索的问题标签。 (3认同)