Github小组评论

Github小组评论,github,Github,我可以让Github在创建评论时自动向评论添加一组人吗 理想情况下,我希望创建一组人,并且只有当该组中至少有一人接受了更改时才能合并 该群体将是该地区的中小企业。其他评审员可以评论和接受,但只有在至少一个SME接受变更的情况下,才能合并PR 在Github中不使用钩子就可以完成吗?是的,您可以在不使用webhooks的情况下完成所有这一切 审批组 对于设置“审批组”的问题,可以使用文件进行设置 来自(我的): 使用CODEOWNERS文件定义负责存储库中代码的个人或团队 当有人打开修改他们所拥有

我可以让Github在创建评论时自动向评论添加一组人吗

理想情况下,我希望创建一组人,并且只有当该组中至少有一人接受了更改时才能合并

该群体将是该地区的中小企业。其他评审员可以评论和接受,但只有在至少一个SME接受变更的情况下,才能合并PR


在Github中不使用钩子就可以完成吗?

是的,您可以在不使用webhooks的情况下完成所有这一切

审批组 对于设置“审批组”的问题,可以使用文件进行设置

来自(我的):

使用CODEOWNERS文件定义负责存储库中代码的个人或团队

当有人打开修改他们所拥有的代码的请求时,代码所有者会被自动请求审阅。当具有管理员权限的人启用了所需的审阅时,他们可以选择要求代码所有者的批准

CODEOWNERS
文件的格式类似于
.gitignore
,但每个作用域旁边都有Github用户名。使用与
.gitignore
文件相同的规则定义作用域

(有关示例
CODEOWNERS
文件,请参见本答案末尾。)

必要的审查 如果需要,还可以启用

来自(再次强调我的):

存储库管理员可以要求所有请求在合并到受保护的分支之前,至少从具有写入或管理权限的人员或指定的代码所有者处收到一次批准的审阅

启用所需的审阅后,任何具有存储库访问权限的人都可以批准拉取请求中的更改。但是,要合并拉取请求,您需要在存储库中具有写入或管理权限的人员在审核中批准拉取请求的更改。如果需要指定代码所有者的审核,并且拉取请求影响具有指定所有者的代码,则需要该所有者的批准


示例代码所有者文件(来自):
代码所有者只在GitHub中工作。不幸的是,它在GitHub Enterprise(我正在使用)中不起作用。@AlexandreSantos啊,这很不幸。虽然您可能无法将它们配置为
CODEOWNERS
文件所能达到的粒度,但您仍然可以使用Github Enterprise 2.8+中提供的“必需的审阅”。有关更多信息,请参阅:“存储库管理员可以要求所有请求在合并到受保护的分支之前,至少从具有写入或管理权限的人员处接收一次已批准的审阅。“不幸的是,这不会自动请求用户进行审阅,尽管它只会防止在没有至少一个对存储库具有写入或管理权限的人的批准审阅的情况下合并拉取请求。建议的解决方案(CODEOWERS)在GitHub中运行良好,但在撰写本文时,它目前不适用于GitHub Enterprise。很抱歉!但是,尽管您可能无法将自动审阅请求配置为
CODEOWNERS
文件所能达到的粒度,但您仍然可以使用Github Enterprise 2.8+中提供的受保护分支进行“必需的审阅”。这比
CODEOWNERS
所能做的要有限一些,但它可能会帮助您解决这个问题。有关详细信息,请参见中的注释。
# This is a comment.

# These owners will be the default owners for everything in
# the repo. Unless a later match takes precedence,
# @global-owner1 and @global-owner2 will be requested for
# review when someone opens a pull request.
*       @global-owner1 @global-owner2

# Order is important; the last matching pattern takes the most
# precedence. When someone opens a pull request that only
# modifies JS files, only @js-owner and not the global
# owner(s) will be requested for a review.
*.js    @js-owner

# You can also use email addresses if you prefer. They'll be
# used to look up users just like we do for commit author
# emails.
*.go docs@example.com

# In this example, @doctocat owns any files in the build/logs
# directory at the root of the repository and any of its
# subdirectories.
/build/logs/ @doctocat

# The `docs/*` pattern will match files like
# `docs/getting-started.md` but not further nested files like
# `docs/build-app/troubleshooting.md`.
docs/*  docs@example.com

# In this example, @octocat owns any file in an apps directory
# anywhere in your repository.
apps/ @octocat

# In this example, @doctocat owns any file in the `/docs`
# directory in the root of your repository.
/docs/ @doctocat