ドキュメントには頻繁に更新が加えられ、その都度公開されています。本ページの翻訳はまだ未完成な部分があることをご了承ください。最新の情報については、英語のドキュメンテーションをご参照ください。本ページの翻訳に問題がある場合はこちらまでご連絡ください。

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

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

ここには以下の内容があります:

ノート: Dependabot version updatesは現在ベータで、変更されることがあります。 このベータの機能を使うにはDependabotに対してどの依存関係を管理してもらうかを知らせる設定ファイルをチェックインしてください。 詳細については「バージョンアップデートの有効化と無効化」を参照してください。

Dependabot version updates について

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

You enable Dependabot version updates by checking a configuration file into your repository. The configuration file specifies the location of the manifest, or of other package definition files, stored in your repository. Dependabot はこの情報を使用して、古いパッケージとアプリケーションをチェックします。 Dependabot は、依存関係のセマンティックバージョニング(semver)を調べて、そのバージョンへの更新の必要性を判断することにより、依存関係の新しいバージョンの有無を決定します。 特定のパッケージマネージャーでは、Dependabot version updates もベンダをサポートしています。 Vendored (or cached) dependencies are dependencies that are checked in to a specific directory in a repository rather than referenced in a manifest. パッケージサーバーが利用できない場合でも、ビルド時にベンダ依存関係を利用できます。 Dependabot version updates は、ベンダの依存関係をチェックして新しいバージョンを確認し、必要に応じて更新するように設定できます。

Dependabot が古い依存関係を特定すると、プルリクエストを発行して、マニフェストを依存関係の最新バージョンに更新します。 For vendored dependencies, Dependabot raises a pull request to replace the outdated dependency with the new version directly. テストに合格したことを確認し、プルリクエストの概要に含まれている変更履歴とリリースノートを確認して、マージします。 詳しい情報については、「バージョン更新の有効化と無効化」を参照してください。

セキュリティアップデートを有効にすると、Dependabot はプルリクエストを発行し、脆弱性のある依存関係を更新します。 詳しい情報については、「Dependabot security updates について」を参照してください。

Dependabot and all related features are covered by GitHub's Terms of Service.

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

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

最初にバージョンアップデートを有効にすると、古くなった依存関係が大量にあり、中には最新バージョンまでにいくつものバージョンが存在しているものもあるかもしれません。 Dependabot checks for outdated dependencies as soon as it's enabled. 設定が更新するマニフェストファイルの数に応じて、設定ファイルの追加後数分のうちに、バージョンアップデートの新しいプルリクエストが発行されるかもしれません。

To keep pull requests manageable and easy to review, Dependabot raises a maximum of five pull requests to start bringing dependencies up to the latest version. 次にスケジュールされているアップデートの前にこれらの最初のプルリクエストをいくつかマージしたなら、それ以降のプルリクエストは最大で5つ(この上限は変更できます)オープンされます。

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

サポートされているリポジトリとエコシステム

サポートされているパッケージマネージャーのいずれかの依存関係マニフェストまたはロックファイルを含むリポジトリのバージョン更新を設定できます。 一部のパッケージマネージャーでは、依存関係のベンダを設定することもできます。 詳しい情報については、「依存関係の更新の設定オプション 」を参照してください。

When running security or version updates, some ecosystems must be able to resolve all dependencies from their source to verify that updates have been successful. If your manifest or lock files contain any private dependencies, Dependabot must be able to access the location at which those dependencies are hosted. Organization owners can grant Dependabot access to private repositories containing dependencies for a project within the same organization. For more information, see "Managing security and analysis settings for your organization."

Currently, Dependabot version updates doesn't support manifest or lock files that contain any dependencies hosted in private registries, or in private GitHub repositories that belong to a different organization than the dependent project. Additionally, Dependabot doesn't support private GitHub dependencies for all package managers. 詳細は、以下の表をご覧ください。

The following table shows, for each package manager:

  • The YAML value to use in the dependabot.yml file
  • The supported versions of the package manager
  • Whether dependencies in private GitHub repositories are supported
  • Whether vendored dependencies are supported
パッケージマネージャーYAML valueSupported versionsPrivate repositoriesVendoring
Bundlerbundlerv1
Cargocargov1
Composercomposerv1, v2
Dockerdockerv1
Elixirmixv1
Elmelmv0.18, v0.19
git submodulegitsubmoduleN/A (no version)
GitHub Actionsgithub-actionsN/A (no version)
Go modulesgomodv1
Gradlegradlesee (A) below
Mavenmavensee (B) below
npmnpmv6, v7
NuGetnuget<= 4.8.
see (C) below
pippipv20
pipenvpip<= 2018.11.26
pip-compilepip5.5.0
poetrypipv1
Terraformterraform<= 0.11
yarnnpmv1

(A) Dependabot doesn't run Gradle but supports updates to the following files: build.gradle and build.gradle.kts (for Kotlin projects).

(B) Dependabot doesn't run Maven but supports updates to pom.xml files.

(C) Dependabot doesn't run the NuGet CLI but does support most features up until version 4.8.

For package managers such as pipenv and poetry, you need to use the pip YAML value. For example, if you use poetry to manage your Python dependencies and want Dependabot to monitor your dependency manifest file for new versions, use package-ecosystem: "pip" in your dependabot.yml file.

リポジトリですでに依存関係管理にインテグレーションを使用している場合は、Dependabot を有効にする前にそれを無効にする必要があります。 詳しい情報については、「インテグレーションについて」を参照してください。

About notifications for Dependabot version updates

You can filter your notifications on GitHub to show Dependabot version updates. 詳しい情報については「インボックスからの通知の管理」を参照してください。

Did this doc help you?

Privacy policy

Help us make these docs great!

All GitHub docs are open source. See something that's wrong or unclear? Submit a pull request.

Make a contribution

OR, learn how to contribute.