Skip to main content

关于 Dependabot 版本更新

您可以使用 Dependabot 来确保您使用的包更新到最新版本。

谁可以使用此功能?

Dependabot version updates 可用于以下存储库:

  • GitHub Enterprise Server 上的所有存储库

Note

站点管理员必须先为 你的 GitHub Enterprise Server 实例设置 Dependabot updates,然后你才能使用此功能。 有关详细信息,请参阅“为企业启用 Dependabot”。

如果企业所有者在企业级别设置了策略,你可能无法启用或禁用 Dependabot updates。 有关详细信息,请参阅“强制实施企业的代码安全性和分析策略”。

关于 Dependabot version updates

Dependabot 负责维护您的依赖项。 您可以使用它来确保仓库自动跟上它所依赖的包和应用程序的最新版本。

有关受支持的仓库和生态系统的详细信息,请参阅“Dependabot 支持的生态系统和存储库”。

通过将 dependabot.yml 配置文件签入存储库,可启用 Dependabot version updates。 配置文件指定存储在仓库中的清单或其他包定义文件的位置。 Dependabot 使用此信息检查过时的包和应用程序。 Dependabot 通过查看依赖项的语义版本控制 (semver) 来确定是否存在新版本的依赖项,从而决定它是否应该更新到该版本。 对于某些软件包管理器,Dependabot version updates 也支持供应。 供应(或缓存)的依赖项是检入仓库中特定目录的依赖项,而不是在清单中引用的依赖项。 即使包服务器不可用,供应的依赖项在生成时也可用。 Dependabot version updates 可以配置为检查为新版本供应的依赖项,并在必要时更新它们。

当 Dependabot 发现过时的依赖项时,它将引发一个拉取请求,用于将清单更新到依赖项的最新版本。 对于供应和依赖项,Dependabot 提出拉取请求以直接将过时的依赖项替换为新版本。 检查测试是否通过,查看拉取请求摘要中包含的更改日志和发行说明,然后合并它。 有关详细信息,请参阅“配置 Dependabot 版本更新”。

如果启用“安全更新”,Dependabot 还将引发用于更新易受攻击的依赖项的拉取请求。 有关详细信息,请参阅“关于 Dependabot 安全更新”。

当 Dependabot 提出拉取请求时,这些拉取请求可以是安全更新或版本更新:

  • Dependabot security updates 是自动拉取请求,可帮助你更新已知漏洞的信赖项。
  • Dependabot version updates 是自动拉取请求,即使它们没有任何漏洞,也会保持更新依赖项。 要检查版本更新的状态,请依次导航到仓库的 Insights(见解)选项卡、Dependency Graph(依赖关系图)、Dependabot。

Dependabot 默认对自己的提交进行签名,即使提交签名不是存储库的要求。 有关已验证提交的详细信息,请参阅“关于提交签名验证”。

Dependabot version updates 和 Dependabot security updates 需要 启用 Dependabot updates 之前,必须配置 你的 GitHub Enterprise Server 实例 以使用具有自托管运行器的 GitHub Actions。 GitHub Actions 才能在 GitHub Enterprise Server 上运行。 有关详细信息,请参阅“为企业启用 Dependabot”。

Dependabot 拉取请求的频率

在配置文件中指定检查每个生态系统的新版本的频率:每日、每周或每月。

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

为使拉取请求保持可管理和易于审查,Dependabot 最多提出五个拉取请求,以便开始将依赖项更新至最新版本。 如果您在下次预定的更新之前先合并了这些拉取请求,剩余的拉取请求将在下次更新时打开,最多不超过此限。 可以通过设置open-pull-requests-limit配置选项来更改打开的拉取请求的最大数量。

若要进一步减少可能看到的拉取请求数,可以使用 groups 配置选项将依赖项集组合在一起(每个包生态系统)。 然后,Dependabot 提出单个拉取请求,以将组中尽可能多的依赖项同时更新到最新版本。 有关详细信息,请参阅“优化 Dependabot 版本更新的拉取请求创建”。

如果您启用了安全更新,有时会看到额外的安全更新拉取请求。 这些请求是由依赖于默认分支的 Dependabot 警报触发的。 Dependabot 自动提出拉取请求以更新有漏洞的依赖项。

有时,由于配置错误或版本不兼容,可能会看到 Dependabot 运行失败。 运行失败 15 次后,15 Dependabot version updates 会跳过后续的计划运行,直到你手动触发检查依赖项关系图的更新。 Dependabot security updates 仍照常运行。

关于 Dependabot updates

的自动停用

当仓库的维护者停止与 Dependabot 拉取请求交互时,Dependabot 会暂时暂停其更新并发出通知,请参阅 不再生成 Dependabot 更新拉取请求

关于 Dependabot 版本更新通知

您可以按 GitHub 筛选通知,以显示由 Dependabot创建的拉取请求的通知。 有关详细信息,请参阅“从收件箱管理通知”。