【问题标题】:How to Tell if Pull Request Has Been Merged如何判断拉取请求是否已合并
【发布时间】:2015-09-21 15:49:45
【问题描述】:

所以this post 解决了我的问题有点,但我还是有点困惑。基本上,我在 GitHub 上查看了一个 repo,我看到目前有 34 个打开的请求和 173 个关闭的请求请求。我目前的理解是这样的:

  1. 如果有人提出愚蠢的拉取请求,维护者将关闭它
  2. 如果有人提出合法的拉取请求,维护者可能会合并它,此时请求被关闭
  3. 如果请求是开放的(合法与否),则意味着维护人员尚未处理它(或正在解决冲突)

然而,这个 repo 中的许多开放请求都非常陈旧,尽管它们似乎做出了合理的更改。这让我想知道我上面的第二个假设是否正确。那么,拉取请求是在合并时关闭,还是保持打开状态?如果它们保持开放,我怎么能说它们实际上是合并的,而不仅仅是处于不确定状态?

提前致谢。

【问题讨论】:

  • 很可能他只是没有维护他的仓库。

标签: git github merge pull-request


【解决方案1】:

带有Open 标签的 PR 仅仅意味着它没有被合并。标签是合法的并且具有明确的含义。 Merged 表示已合并关闭,Closed 表示已关闭且代码未被接受。

但是,如果仓库所有者或合作者已从命令行合并 PR,则除非他更新仓库,否则它将不会反映在 Web 界面上。

【讨论】:

  • Himanshu,感谢您的回复。那么为什么 GitHub 只在 Pull Requests 页面的左上方显示 Open 和 Closed 呢?如果我关注 repo,在合并 PR 时会通知我吗?
【解决方案2】:

只要维护者通过 Web 界面合并更改,拉取请求就会自动关闭。如果他使用命令行进行合并,他将代码推送回 Github 后就会立即关闭。

因此,如果 PR 仍处于打开状态,则表示它未合并。

参考:Best-way-to-merge-a-github-pull-request

【讨论】:

  • BitBucket中有一个不删除分支的选项,那么如何知道它是否被合并了呢?
  • 我看到的是,如果 PR 是通过 --ff-only 或 --squash 策略合并的,那么 Bitbucket 不会意识到 PR 已经合并并保持打开状态
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-12-24
  • 2011-10-12
  • 2016-12-11
  • 2013-02-21
  • 2010-10-15
  • 2017-12-12
  • 2021-05-07
相关资源
最近更新 更多