Skip to main content

探索仓库的依赖项

可以使用依赖项关系图查看项目所依赖的包以及依赖它的存储库。 此外,您还可以看到在其依赖项中检测到的任何漏洞。

谁可以使用此功能?

存储库管理员、组织所有者以及对存储库具有写入维护访问权限的人员

查看依赖关系图

依赖项关系图显示了存储库中的依赖关系和依赖项。 对于每个依赖项,可以看到许可证信息和漏洞严重程度。 还可以使用搜索栏搜索特定依赖项。 依赖项按漏洞严重程度自动排序。有关依赖项检测和受支持的生态系统的信息,请参阅“依赖项关系图支持的包生态系统”。

  1. 在 GitHub 上,导航到存储库的主页面。

  2. 在存储库名称下,单击 “见解”。

    存储库的主页的屏幕截图。 在水平导航栏中,标有图形图标和“见解”的选项卡以深橙色标出。

  3. 在左侧边栏中,单击“依赖项关系图”。

    “依赖项关系图”选项卡的屏幕截图。选项卡以橙色边框突出显示。

  4. (可选)使用搜索栏查找特定的依赖项或一组依赖项。

    Note

    搜索栏仅根据包名称进行搜索。

  5. (可选)要查看依赖于存储库的存储库和包,请在“依赖项关系图”下单击“依赖项”。

    “依赖项关系图”页面的屏幕截图。 “依赖项”选项卡以橙色边框突出显示。

    Note

    GitHub 当前只能确定公共存储库的依赖项。

依赖项视图

对于每个依赖项,可以看到其生态系统、找到它的清单文件和检测到的许可证。 私有仓库、私有包或无法识别文件上的依赖项以纯文本显示。 如果依赖项的包管理器位于公共存储库中,则可以将鼠标悬停在依赖项名称上以显示包含关联存储库信息的弹出窗口。

使用 依赖项提交 API 提交给项目的依赖项将显示使用哪个检测器进行提交以及提交时间。有关使用 依赖项提交 API 的详细信息,请参阅“使用依赖项提交 API”。

如果在仓库中检测到漏洞,这些漏洞将显示在视图顶部,供有权访问 Dependabot alerts 的用户查看。

依赖项视图

对于公共仓库,依赖项视图显示其他仓库如何使用该仓库。 要在包管理器中仅显示包含库的存储库,请单击依赖的存储库列表正上方的“编号包”。 依赖项计数是近似值,不一定与列出的依赖项匹配。

为私有仓库启用或禁用依赖关系图

存储库管理员可以启用或禁用私有 存储库或内部 存储库的依赖项关系图。

您也可以为用户帐户拥有的所有存储库启用或禁用依赖项关系图。 有关详细信息,请参阅“管理个人帐户的安全和分析设置”。

还可以同时为组织中的多个存储库启用依赖项关系图。 有关详细信息,请参阅“保护你的组织”。

  1. 在 GitHub 上,导航到存储库的主页面。

  2. 在存储库名称下,单击 “设置”。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”。

    存储库标头的屏幕截图,其中显示了选项卡。 “设置”选项卡以深橙色边框突出显示。

  3. 在边栏的“安全性”部分中,单击“ 代码安全性和分析”。

  4. 阅读有关授予 GitHub Enterprise Cloud 只读访问存储库数据的消息,以启用依赖项关系图,然后在“依赖项关系图”旁边单击“启用”。

    显示如何为存储库启用依赖项关系图的屏幕截图。 “启用”按钮以深橙色轮廓突出显示。

    可以随时单击“代码安全性和分析”的设置页上“依赖项关系图”旁边的“禁用”来禁用依赖项关系图。

更改“Used by(使用者)”包

可能会注意到某些存储库在“代码”选项卡的边栏中有“使用者”部分。如果存在以下内容,则存储库将包含“使用者”部分:

  • 为存储库启用了依赖关系图(有关更多详细信息,请参阅上一节)。
  • 存储库包含在受支持的包生态系统上发布的包。
  • 在生态系统中,你的包具有指向存储源代码的公共存储库的链接。
  • 超过 100 个存储库依赖于你的包。

“Used by(使用者)”部分显示已发现对包的公开引用数量,并显示某些依赖项所有者的头像。

存储库的“使用者”部分的屏幕截图。 “使用者”标题的右侧是“13.4m”。 标题下显示了 8 个头像和“+13,435,819”。

单击此部分的任何项都会转到依赖项关系图的“依赖项”选项卡。

“Used by(使用者)”部分表示仓库中的单个包。 如果您对包含多个包的仓库拥有管理员权限,您可以选择“Used by(使用者)”部分表示哪个包。

  1. 在 GitHub 上,导航到存储库的主页面。

  2. 在存储库名称下,单击 “设置”。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”。

    存储库标头的屏幕截图,其中显示了选项卡。 “设置”选项卡以深橙色边框突出显示。

  3. 在边栏的“安全性”部分中,单击“ 代码安全性和分析”。

  4. 在“Code security and analysis(代码安全和分析)”下,单击“Used by counter(使用者计数)”部分中的下拉菜单并选择一个包。

依赖关系图疑难排解

如果依赖关系图为空,则包含依赖项的文件可能有问题。 检查该文件以确保其格式对文件类型是正确的。

如果文件格式正确,请检查文件大小。 除非你是 GitHub Enterprise 用户,否则依赖项关系图将忽略超过 1.5 Mb 的单个清单和锁定文件。 默认情况下,每个存储库最多处理 150 个清单或锁定文件,因此可以在存储库子目录中将依赖项拆分为较小的文件。

如果清单或锁定文件未经处理,则其依赖项将从依赖项关系图中省略,并且无法接受不安全依赖项检查。

延伸阅读