2

我已经创建了一个基础存储库并向我的朋友发送了成为我项目合作者的请求。他分叉了我的存储库并在那里进行了一些更改。然后他为我创建了一个拉取请求,以合并他所做的更改。但与此同时,他还可以选择在未经我许可的情况下将更改合并到基础存储库,即我的存储库。我怎么能限制它?我的意思是如何只能合并请求而不是我的所有团队成员。

实际上,我已经在一台 PC 上尝试过,我在浏览器上打开了主帐户,在隐身选项卡上打开了另一个帐户。并创建了从我的另一个帐户到主帐户的拉取请求,但在我的另一个帐户中,我可以选择将更改合并到我的主帐户的基本存储库,当我这样做时,更改也会反映到我的主帐户 GitHub 存储库。

帮我修一下。如果我在某处错了,请告诉我我的朋友只能创建拉取请求的过程,我将在检查后合并它们。

4

2 回答 2

2

要保护存储库 GitHub 页面上的分支:

  1. 打开右上角的设置标签
  2. 单击左侧栏中的分支
  3. 选择您要保护/限制访问的分支
  4. 分支保护规则的右侧单击添加规则
  5. 分支名称模式字段是您要保护的分支的确切名称。
  6. 选择合并前需要拉取请求审查或选择需要代码所有者审查
  7. 单击底部的绿色创建按钮,您就完成了!
于 2020-08-29T21:12:43.430 回答
1

首先检查您的目标分支(用作合并请求的目标的分支)是如何受到保护的。

请参阅“关于受保护的分支”,更准确地说是“定义拉取请求的可合并性

您可以强制“拉取请求所需的评论

存储库管理员可以要求所有拉取请求从以下位置接收特定数量的批准评论:

  • 在存储库中具有写入或管理员权限的人
  • 或者在将它们合并到受保护的分支之前从指定的代码所有者那里获得。

关于模式,文档提到:

您可以在存储库中为特定分支、所有分支或匹配使用 fnmatch 语法指定的命名模式的任何分支创建分支规则。
例如,要要求包含单词 release 的任何分支在合并之前至少有两个拉取请求审查,您可以为*release*.

fnmatch您可以在此处查看模式示例。
模式匹配的完整规范在这里,导致模式匹配单个字符和多个字符

于 2020-08-29T17:38:26.487 回答