Skip to main content

GitHub Dependabot のバージョンアップデートについて

Dependabot を使用して、使用するパッケージを最新バージョンに更新しておくことができます。

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

Dependabot version updates は、次のリポジトリで使用できます。

  • GitHub Enterprise Server のすべてのリポジトリ

メモ

この機能を使用するには、サイト管理者が お使いの GitHub Enterprise Server インスタンスの Dependabot updatesを設定する必要があります。 詳細については、「エンタープライズ向けの Dependabot の有効化」を参照してください。

Enterprise 所有者が Enterprise レベルでポリシーを設定している場合、Dependabot updates を有効または無効にできない場合があります。 詳しくは、「エンタープライズのコード セキュリティと分析のためのポリシーの適用」をご覧ください。

Dependabot version updates について

Dependabot は、依存関係を維持する手間を省きます。 これを使用して、リポジトリが依存するパッケージおよびアプリケーションの最新リリースに自動的に対応できるようにすることができます。

サポートされているリポジトリとエコシステムについては、「Dependabot でサポートされているエコシステムとリポジトリ」を参照してください。

          `dependabot.yml` 構成ファイルをリポジトリにチェックインして、Dependabot version updates を有効にします。 設定ファイルは、リポジトリに保存されているマニフェストまたは他のパッケージ定義ファイルの場所を指定します。 Dependabot ではこの情報を使用して、期限切れのパッケージとアプリケーションが検査されます。 Dependabot では、依存関係のセマンティック バージョニング ([semver](https://semver.org/)) を調べて、依存関係の新しいバージョンの有無が判断され、そのバージョンへ更新すべきかどうかが決定されます。 特定のパッケージマネージャーでは、Dependabot version updates もベンダをサポートしています。 ベンダ (またはキャッシュ) された依存関係は、マニフェストで参照されるのではなく、リポジトリ内の特定のディレクトリにチェックインされる依存関係です。 パッケージサーバーが利用できない場合でも、ビルド時にベンダ依存関係を利用できます。 Dependabot version updates は、ベンダの依存関係をチェックして新しいバージョンを確認し、必要に応じて更新するように設定できます。

Dependabot で以前の依存関係が特定されると、マニフェストを依存関係の最新バージョンに更新する pull request が発行されます。 ベンダーの依存関係の場合、Dependabot はプルリクエストを生成して、古い依存関係を新しいバージョンに直接置き換えます。 テストに合格したことを確認し、プルリクエストの概要に含まれている変更履歴とリリースノートを確認して、マージします。 詳しくは、「Dependabot バージョンの更新の構成」をご覧ください。

          _セキュリティ更新プログラム_ を有効にすると、Dependabot でも pull request が発行され、脆弱性のある依存関係を更新します。 詳しくは、「[AUTOTITLE](/code-security/dependabot/dependabot-security-updates/about-dependabot-security-updates)」をご覧ください。

セキュリティ更新とバージョン更新の比較についての依存ボットのプルリクエスト

Dependabot は、コミット署名がリポジトリの要件ではない場合でも、既定では独自のコミットに署名します。 検証済みコミットの詳細については、「コミット署名の検証について」を参照してください。

Dependabot updates を有効にする前に、セルフホステッド ランナーで GitHub Actions を使用するように お使いの GitHub Enterprise Server インスタンスを構成する必要があります。Dependabot version updates と Dependabot security updates が GitHub 上で動作するには、GitHub Actions が必要です。 詳細については、「エンタープライズ向けの Dependabot の有効化」を参照してください。

Dependabot のプルリクエストの頻度

設定ファイルで、新しいバージョンの各エコシステムをチェックする頻度を、毎日、毎週、毎月の中から指定します。

最初にバージョンアップデートを有効にすると、古くなった依存関係が大量にあり、中には最新バージョンまでにいくつものバージョンが存在しているものもあるかもしれません。 Dependabotは、有効化されるとすぐに古くなった依存関係をチェックします。 設定が更新するマニフェストファイルの数に応じて、設定ファイルの追加後数分のうちに、バージョンアップデートの新しいプルリクウェストが発行されるかもしれません。 Dependabotは、設定ファイルに対するその後の変更に対しても更新を実行します。

プルリクウェストを管理可能でレビューしやすく保つために、Dependabotは依存関係を最新バージョンにし始めるためのプルリクウェストを最大で5つまで発行します。 次にスケジュールされているアップデートの前にこれらの最初のプルリクウェストの一部をマージした場合、残りのプルリクウェストは上限まで次のアップデート時にオープンとなります。 オープンプルリクウェストの最大数は、open-pull-requests-limit 構成オプションを設定することで変更できます。

表示される pull request の数をさらに減らすには、groups 構成オプションを使って、依存関係のセットを (パッケージ エコシステムごとに) グループ化することができます。 次に、Dependabot により、1 つの pull request が生成され、グループ内のできるだけ多くの依存関係が一度で最新バージョンに更新されます。 詳細については「Dependabot バージョン更新プログラムに合わせて pull request の作成を最適化する」を参照してください。

セキュリティアップデートを有効にした場合、セキュリティアップデートの追加に対するプルリクエストが表示されることがあります。 これらは、デフォルト ブランチへの依存関係に対する Dependabot アラートによってトリガーされます。 Dependabot はプルリクエストを自動的に生成し、脆弱性のある依存関係を更新します。

スケジュールされた実行をスキップしてバージョンを更新します。

Dependabot updates

の自動非アクティブ化について

リポジトリのメンテナが Dependabot pull request の操作を停止すると、Dependabot はその更新を一時的に停止し、そのことが通知されます。「Dependabot 更新 pull request が生成されなくなりました」を参照してください。

Dependabot バージョン更新の通知について

GitHub で通知をフィルター処理して、Dependabot によって作成された pull request の通知を表示できます。 詳しくは、「インボックスからの通知を管理する」をご覧ください。