如果某些条件失败,我们有没有办法拒绝创建拉取请求?我正在nodejs和probot中开发 GitHub 应用程序,并且希望在开发人员单击“创建拉取请求”按钮时拒绝创建拉取请求(例如检查拉取请求正文中是否存在某些模式)拉取请求正文失败。
因此,从根本上说,如果某些验证失败,则不应首先创建拉取请求(并且应将用户带回 PR 创建页面)。
即,如果拉取请求正文(或任何其他逻辑)的验证失败,则在同一个拉取请求创建页面上。
如果某些条件失败,我们有没有办法拒绝创建拉取请求?我正在nodejs和probot中开发 GitHub 应用程序,并且希望在开发人员单击“创建拉取请求”按钮时拒绝创建拉取请求(例如检查拉取请求正文中是否存在某些模式)拉取请求正文失败。
因此,从根本上说,如果某些验证失败,则不应首先创建拉取请求(并且应将用户带回 PR 创建页面)。
即,如果拉取请求正文(或任何其他逻辑)的验证失败,则在同一个拉取请求创建页面上。
因此,从根本上说,不应该首先创建拉取请求
这是不可能的。拉取请求的创建是一个原子操作,它不会暂停检查,例如 Git 中的预接收钩子,您可以在其中分析提交的有效负载,然后根据响应它枯萎失败或被添加到回购。
您在这里的最佳选择是自动关闭拉取请求,并提供说明和失败原因的评论。我知道这会导致很多“空”的 PR,但这是您最接近的解决方案。
您可以做的另一件事是最近几天才有可能做,如果您的逻辑失败,请将拉取请求保持打开状态并将其转换为草稿。只有当用户将拉取请求更正为您的标准时,您才会将其切换为非草稿:https ://developer.github.com/v3/pulls/#update-a-pull-request 。当然,在这种情况下,您必须监视更改拉取请求的事件。