# Dependabot 拉取请求

了解版本和安全更新的拉取请求频率及其自定义选项。

## 安全更新的拉取请求

如果你启用了安全更新，安全更新的拉取请求将由默认分支上依赖项的 Dependabot 警报触发。
Dependabot 自动引发拉取请求以更新易受攻击的依赖项。

每个拉取请求都包含快速、安全地查看提议的修复程序并将其合并到项目中所需的全部内容。 这包括漏洞的相关信息，如发行说明、变更日志条目和提交详细信息。 拉取请求解决的漏洞详细信息对无权访问存储库 Dependabot alerts 的任何人隐藏。

当你合并包含安全更新的拉取请求时，你的仓库中相应的 Dependabot 警报会被标记为已解决。 有关 Dependabot 拉取请求的详细信息，请参阅 [管理依赖项更新的所有拉取请求](/zh/enterprise-server@3.17/code-security/dependabot/working-with-dependabot/managing-pull-requests-for-dependency-updates)。

> \[!NOTE]
> 最好制定自动测试和验收流程，以便在合并拉取请求之前执行检查。 如果建议的升级版本包含额外的功能，或者更改会中断您的项目代码，这种做法尤其重要。 有关持续集成的详细信息，请参阅“[持续集成](/zh/enterprise-server@3.17/actions/automating-builds-and-tests/about-continuous-integration)”。

### 自定义安全更新的拉取请求

您可以自定义 Dependabot 如何为安全更新创建拉取请求，以便最符合您项目的安全优先级和流程。 例如：

* 通过将多个更新分组到单个拉取请求中**来优化Dependabot拉取请求，以确定有意义的更新的优先级**。
* 为**将 Dependabot 的拉取请求集成到您现有的工作流中**应用自定义标签。

与版本更新类似，安全更新的自定义选项在 `dependabot.yml` 文件中定义。 如果已经为版本更新自定义了 `dependabot.yml`，则你定义的许多配置选项可能也会自动应用于安全更新。 但是，需要注意几个要点：

* ```
            Dependabot security updates **始终由安全公告触发**，而不是根据你为版本更新在 `dependabot.yml` 中设置的 `schedule` 运行。
  ```
* ```
            Dependabot **仅针对默认分支**引发安全更新的拉取请求。 如果你的配置为 `target-branch` 设置了值，则该包生态系统的自定义默认情况下仅适用于版本更新。
  ```

有关详细信息，请参阅“[自定义 Dependabot 安全更新的拉取请求](/zh/enterprise-server@3.17/code-security/how-tos/secure-your-supply-chain/manage-your-dependency-security/customizing-dependabot-security-prs)”。

## 版本更新的拉取请求

对于版本更新，请指定检查每个生态系统的配置文件中的新版本的频率：每日、每周或每月。

首次启用版本更新时，您可能有很多过时的依赖项，其中一些可能为许多落后于最新版本的版本。 Dependabot 将在其启用后立即检查过时的依赖项。 根据您配置更新的清单文件的数量，您可能会在添加配置文件后几分钟内看到新的版本更新拉取请求。 Dependabot 也会在配置文件后续更改时运行更新。

为使拉取请求保持可管理和易于审查，Dependabot 最多提出五个拉取请求，以便开始将依赖项更新至最新版本。 如果您在下次预定的更新之前先合并了这些拉取请求，剩余的拉取请求将在下次更新时打开，最多不超过此限。 可以通过设置[`open-pull-requests-limit`配置选项](/zh/enterprise-server@3.17/code-security/dependabot/working-with-dependabot/dependabot-options-reference#open-pull-requests-limit-)来更改打开的拉取请求的最大数量。

若要进一步减少可能看到的拉取请求数，可以使用 [`groups`](/zh/enterprise-server@3.17/code-security/dependabot/working-with-dependabot/dependabot-options-reference#groups--) 配置选项将依赖项集组合在一起（每个包生态系统）。 然后，Dependabot 提出单个拉取请求，以将组中尽可能多的依赖项同时更新到最新版本。 有关详细信息，请参阅 [优化 Dependabot 版本更新的拉取请求创建](/zh/enterprise-server@3.17/code-security/dependabot/dependabot-version-updates/optimizing-pr-creation-version-updates)。

## Dependabot 拉取请求命令

Dependabot 响应注释中的简单命令。 每个拉取请求在“Dependabot 命令和选项”部分下包含你可以用来处理拉取请求的命令详细信息（例如：合并、压缩、重新打开、关闭或变基拉取请求）。 其目的是让你尽可能轻松地将这些自动生成的拉取请求分类。 有关详细信息，请参阅“[Dependabot 拉取请求注释命令](/zh/enterprise-server@3.17/code-security/reference/supply-chain-security/dependabot-pull-request-comment-commands)”。