【问题标题】:Why is the Approve button disabled in GitHub "pull request review"?为什么 GitHub “拉取请求审查” 中的批准按钮被禁用?
【发布时间】:2018-05-20 14:56:19
【问题描述】:

问题背景:

到目前为止,我是 GitHub 存储库的唯一所有者。我将代码从我的系统提交到一个名为 release 的分支(实际上它是一个基于开发分支的标签,如果这很重要的话)。在 GitHub 中,我创建了一个拉取请求,其中 base 分支是 mastercompare 分支是 release。

但我只能对审核发表评论,不允许批准。可能是什么原因?

注意:没有合并冲突,并且在创建拉取请求时会显示可以合并的绿色信号。

这是我如何保护主分支的:

【问题讨论】:

  • 嗯...这可能是权限问题吗?也许您必须授予自己某些权利才能看到这些选项?
  • 我想是的。但没有得到任何线索。 GitHub 文档和其他资源没有指出任何此类案例或任何此类许可。我能看到的唯一配置选项是项目的设置选项。可能我需要在任何不那么直观的标签中挖掘更多内容。
  • 嗨,您有机会查看我的回答吗?
  • @variable,reviewed.thanks 分享实现这一目标的方法。
  • 请您接受它作为答案 - 因为当前标记的答案不正确。

标签: git github pull-request


【解决方案1】:

如果您是提交拉取请求的人,则您无法批准或请求对此拉取请求进行更改。 它仅在其他人请求此类操作时可用。

所以你唯一的选择就是评论它。

【讨论】:

  • 这可能不是这种情况,因为我在另一个项目中做过一次。此外,如果我们从逻辑上思考,这种用例应该是允许的。假设,我是唯一的用户,我不想直接提交到 master 分支,然后从 dev 分支提交代码,提出拉取请求然后自我批准就可以了。对吗?
  • @Dexter:你可能这么认为。我什至可能同意。 GitHub 上的人不同意。你必须接受他们,因为他们是控制这一切的人。
  • @torek,感谢您的评论。你能分享一个相同的链接吗?我的意思是我在哪里可以获得更多信息。
  • 接受这个作为答案。我相信与我自己之前的论点相反的论点-如果您自己要批准它,那么您的请求有什么意义。 :)。正如我所说-我能够将它合并一次,也许是因为我没有保护那个分支..
  • 我没有对 GitHub 上的受保护分支的事情大惊小怪,但我知道您也可以将自己列为保护的例外。我不确定接下来会发生什么。
【解决方案2】:

我是我的 github 个人资料中唯一的开发人员。我是项目的管理员。然而,我无权批准我自己的 PR。 我确实看到了使用管理员权限进行合并的选项。

【讨论】:

    【解决方案3】:

    在 github 添加 BE 验证之前看起来像解决方法:) 但只需在浏览器中打开 DevTools 并从“批准”单选按钮输入中删除 disabled 属性。为我工作。

    【讨论】:

    • 很有趣,但很有效,谢谢?
    【解决方案4】:

    对我来说,唯一的选择就是禁用它。

    在设置 > 分支 > 分支下禁用合并前需要拉取请求审查

    我是我项目的唯一开发者,所以我可能无法查看自己的拉取请求。我做了一个公关,然后在测试通过时合并它....我知道我的答案不能准确回答问题,但上述修复都没有奏效....

    【讨论】:

    • 这是正确答案
    【解决方案5】:

    我今天遇到了同样的问题并设法解决了。

    仅当您尝试将代码放入其中的分支的分支保护规则启用了以下设置时,才会出现此问题:包括管理员

    此设置的定义是:对管理员强制执行上述所有配置的限制。

    禁用此设置,它将允许您作为唯一所有者接受您自己的拉取请求。

    【讨论】:

    • 这是不正确的,当禁用“包括管理员”时,同样的问题仍然存在。
    • 这个答案(部分)正确。我刚查了一下,如果你是管理员,并且规则没有“包括管理员”,可以绕过“分支保护规则”合并自己的PR。你会在“Merge pull request”按钮上方看到这条消息:As an administrator, you may still merge this pull request.并且一旦你点击它,你需要确认你想要Use your administrator privileges to merge this pull request.你可以合并你自己的PR,但你仍然不能“批准” ”或“请求更改”,这就是问题所要问的。
    【解决方案6】:

    我也遇到了这个问题,但我能够通过将拉取请求分配给自己来解决它。这让我可以审查我自己的拉取请求并将其与主分支合并。

    【讨论】:

    • 您确定您能够查看自己的拉取请求吗?我现在检查了一下,通过“分支保护规则”,我所能做的就是在我自己的 PR 上“评论”,而不是“批准”或“请求更改”。添加评论将不允许我合并 PR,因此我认为您的解决方案不起作用。也许您设法合并了自己的 PR,因为您的规则没有“包括管理员”。
    • 我将 PR 分配给了自己,但我无法批准
    【解决方案7】:

    我遇到了同样的问题,我可以通过解决它们之间的所有冲突来合并分支。

    在解决冲突之前,有一条错误消息,例如无法自动合并,但您可以创建拉取请求。

    然后我删除了该拉取请求,并在解决所有冲突后再次创建拉取请求,并且出现一条消息“能够合并”

    1. 创建拉取请求

    2. 检查消息“能够合并”。如果有关于冲突等的错误消息,那么也许你不能自己合并它。

    3. 在拉取请求选项卡下,您将看到绿色按钮“合并拉取请求”已启用。

    1. 通过单击该按钮,拉取请求将成功合并。

    【讨论】:

    • 嗨 Rahul,正如我在问题中提到的那样,我没有合并冲突。那么根据您的观察,现在 GitHub 的行为在这方面发生了变化?
    • 不,在批准的情况下,行为是相同的,但我能够自己合并拉取请求
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-02
    相关资源
    最近更新 更多