Skip to main content

Configuring the dependency graph

You can allow users to identify their projects' dependencies by enabling the dependency graph.

この機能を使用できるユーザーについて

リポジトリの所有者、組織の所有者、セキュリティ マネージャー、および 管理者 ロールを持つユーザー

About the dependency graph

依存関係グラフは、リポジトリに格納されているマニフェストおよびロック ファイル、および 依存関係送信 API を使用してリポジトリに送信された依存関係の概要です。 それぞれのリポジトリについて、以下が表示されます:

  • リポジトリが依存している依存関係、エコシステム、パッケージ
  • 依存、依存するリポジトリ、パッケージ

依存関係ごとに、バージョン、ライセンス情報、それを含むマニフェスト ファイル、既知の脆弱性があるかどうかを確認できます。 推移的な依存関係をサポートするパッケージ エコシステムの場合、リレーションシップの状態が表示され、[] をクリックしてから [Show paths] をクリックすると、その依存関係の基になっている推移パスを確認できます。

検索バーを使用して、特定の依存関係を検索することもできます。 依存関係は、脆弱なパッケージが先頭になるように自動的に並べ替えられます。

For more information, see 依存関係グラフについて.

Configuring the dependency graph

To generate a dependency graph, GitHub needs read-only access to the dependency manifest and lock files for a repository. The dependency graph can be enabled or disabled for all repositories. For more information on viewing the dependency graph, see Exploring the dependencies of a repository.

さらに、依存関係送信 API を使用して、マニフェストやロック ファイルの分析で依存関係グラフがサポートされていないエコシステムであっても、任意のパッケージ マネージャーやエコシステムから依存関係を送信することができます。 依存関係送信 API を使ってプロジェクトに送信された依存関係には、提出にどの検出機能が使われたか、いつ送信されたかが表示されます。 依存関係送信 API について詳しくは、「Using the dependency submission API」をご覧ください。

Enabling and disabling the dependency graph

リポジトリ管理者は、可視性に関係なく、ユーザー アカウントが所有するすべてのリポジトリの依存関係グラフを有効または無効にすることができます。 「セキュリティと分析機能の管理」を参照してください。

組織内の複数のリポジトリに対して同時に依存関係グラフを有効にすることもできます。 詳細については、「組織のセキュリティ」を参照してください。

  1. GitHub で、リポジトリのメイン ページに移動します。

  2. リポジトリ名の下にある [Settings] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。

    タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。

  3. サイドバーの [Security] セクションで、[ Advanced Security] をクリックします。

  4. 依存関係グラフを有効にするにはリポジトリ データへの読み取りアクセスを GitHub に許可することに関するメッセージを読み、[Dependency Graph] の隣にある [Enable] をクリックします。

    [Advanced Security] の設定ページで、[Dependency Graph] の横にある [Disable] をクリックして、いつでも依存関係グラフを無効にできます。

When the dependency graph is first enabled, any manifest and lock files for supported ecosystems are parsed immediately. The graph is usually populated within minutes but this may take longer for repositories with many dependencies. Once enabled, the graph is automatically updated with every push to the repository and every push to other repositories in the graph.

Further reading