Skip to main content

このバージョンの GitHub Enterprise はこの日付をもって終了となります: 2022-09-28. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの改善、新機能のためには、最新バージョンのGitHub Enterpriseにアップグレードしてください。 アップグレードに関する支援については、GitHub Enterprise supportに連絡してください。

About the dependency graph

You can use the dependency graph to identify all your project's dependencies. The dependency graph supports a range of popular package ecosystems.

About the dependency graph

依存関係グラフは、リポジトリに保存されているマニフェスト及びロックファイルのまとめです。 それぞれのリポジトリにおいて、依存関係グラフは以下を表示します。依存関係、すなわちリポジトリが依存するエコシステムとパッケージ。 GitHub Enterprise Serverは、リポジトリに依存する対象、リポジトリ、パッケージに関する情報を計算しません。

When you push a commit to GitHub Enterprise Server that changes or adds a supported manifest or lock file to the default branch, the dependency graph is automatically updated. For information on the supported ecosystems and manifest files, see "Supported package ecosystems" below.

When you create a pull request containing changes to dependencies that targets the default branch, GitHub uses the dependency graph to add dependency reviews to the pull request. These indicate whether the dependencies contain vulnerabilities and, if so, the version of the dependency in which the vulnerability was fixed. For more information, see "About dependency review."

Dependency graph availability

Enterpriseのオーナーは、依存関係グラフとDependabotアラートをEnterpriseで設定できます。 詳しい情報については「Enterpriseでの依存関係グラフの有効化」及び「EnterpriseでのDependabotの有効化」を参照してください。

Dependencies included

The dependency graph includes all the dependencies of a repository that are detailed in the manifest and lock files, or their equivalent, for supported ecosystems. This includes:

  • Direct dependencies, that are explicitly defined in a manifest or lock file
  • Indirect dependencies of these direct dependencies, also known as transitive dependencies or sub-dependencies

The dependency graph identifies indirect dependencies from the lock files.

For more information on how GitHub Enterprise Server helps you understand the dependencies in your environment, see "About supply chain security."

Using the dependency graph

You can use the dependency graph to:

Supported package ecosystems

The recommended formats explicitly define which versions are used for all direct and all indirect dependencies. If you use these formats, your dependency graph is more accurate. It also reflects the current build set up and enables the dependency graph to report vulnerabilities in both direct and indirect dependencies.

Package managerLanguagesRecommended formatsAll supported formats
ComposerPHPcomposer.lockcomposer.json, composer.lock
NuGet.NET languages (C#, F#, VB), C++.csproj, .vbproj, .nuspec, .vcxproj, .fsproj.csproj, .vbproj, .nuspec, .vcxproj, .fsproj, packages.config
Go modulesGogo.modgo.mod
MavenJava, Scalapom.xmlpom.xml
npmJavaScriptpackage-lock.jsonpackage-lock.json, package.json
pipPythonrequirements.txt, pipfile.lockrequirements.txt, pipfile, pipfile.lock,[‡]
RubyGemsRubyGemfile.lockGemfile.lock, Gemfile, *.gemspec
YarnJavaScriptyarn.lockpackage.json, yarn.lock

[‡] If you list your Python dependencies within a file, we may not be able to parse and list every dependency in your project.

Further reading