GitHub:Dependabot がプルリクをリベースしない
既定では、Dependabot は衝突を解くために自分のプルリクを自動でリベースします。余分なコミットが push されたプルリクと、30日マージされないプルリクはリベースしなくなります。その場合も自分でリベースしてマージするか、コメントで Dependabot に頼めます(GitHub の説明「依存関係の更新のプルリクを管理する」・2026年10月27日に確認)。
@dependabot rebase @dependabot recreate
Dependabot がリベースをやめた理由
- 余分なコミット:既定では、余分なコミットが push されると Dependabot はそのプルリクをリベースしなくなります。Update branch もその1つで、ベースのブランチの先頭をプルリクのブランチにマージします(GitHub の説明「プルリクのブランチを更新する」)。手で衝突を解いて push したコミットも同じです。
- 30日:30日マージされないプルリクは、Dependabot がリベースしなくなります。
- 設定:
dependabot.ymlでrebase-strategy: disabledにすると、Dependabot はプルリクをリベースしなくなります。無効にする前から開いていたものは、開いてから30日まではリベースされます(GitHub の説明「Dependabot のオプション」)。 - 見に来るとき:Dependabot が変化を確かめるのは、版の更新の予定が走るとき、閉じた Dependabot のプルリクを開き直したとき、
target-branchを変えたとき、マージ先への push の後で Dependabot のプルリクが衝突したときです。
コメントのコマンド
@dependabot rebase:プルリクをリベースします。Dependabot はコマンドを受けると親指を立てた絵文字で応え、コメントで返事をすることもあります。ほかの更新やコマンドで忙しいと、数分かかることがあります(GitHub の説明「Dependabot のプルリクのコメントのコマンド」)。@dependabot recreate:プルリクを作り直します。プルリクに加えられた編集は上書きされます。- 強制 push を許す:メッセージに
[dependabot skip]・[skip dependabot]・[dependabot-skip]・[skip-dependabot](大文字・小文字どちらでも)を含むコミットでは Dependabot は止まらず、その上にリベースして強制 push できます。 - 無視すると閉じる:
@dependabot ignore this dependencyや、メジャー・マイナー・パッチの版の同じコマンドはプルリクを閉じ、その設定をリポジトリにまとめて保存します。複数人のリポジトリでは、設定ファイルのignoreに書くことを GitHub は勧めています。
ほかの Dependabot のプルリクのエラー
- 適用済み:Dependabot は、更新がデフォルトブランチにコミットされるとプルリクを閉じますが、まれに開いたまま残ります。
@dependabot recreateか@dependabot rebaseで Dependabot が確かめ直し、要らなければ閉じます(GitHub の説明「Dependabot のエラー」)。 - 最新版へのプルリクが開いている:セキュリティの更新では、その依存関係を最新版へ上げるプルリクがすでに開いていると、Dependabot は2つ目を作りません。安全と分かったらそちらをマージするか、閉じて新しく作らせます。
- 上限:セキュリティの更新のプルリクが10本、版の更新のプルリクが5本(後者は
open-pull-requests-limit)開いていると「Dependabot cannot open any more pull requests」になります。いくつかマージか閉じてから、新しく作らせます。 - 作らせ方:セキュリティの更新は Dependabot のアラートで Create Dependabot security update を、版の更新は Insights の Dependency graph の Dependabot のタブで Last checked TIME ago を押して Check for updates を押します。
直す所
- 遅れている・衝突している:ブランチを更新したり自分で衝突を解いたりせず、
@dependabot rebaseとコメントします。それらは Dependabot を止めるコミットを足します。ほかのプルリクなら衝突の解決とブランチの更新を参照。 - もう誰かが push した:
@dependabot recreateでその編集なしに作り直すか、自分でリベースしてマージします。 - リベースされ続けるには:
rebase-strategyを既定のままにし、Dependabot のプルリクを30日以内にマージします。
IntelliJ IDEA で GitHub のプルリクを見るなら
Lesstep の Pull Request Inbox for GitHub は、JetBrains IDE(2024.1 以降)のプラグインです。プルリクのレビュー・チェック・会話を差分の隣に出し、対象のブランチが許す方法でマージします。Dependabot が開いたプルリクでは、マージ先に新しいコミットがあるときや衝突しているときに、マージの確認が @dependabot rebase とコメントするよう言い、ブランチの更新は出しません。コマンドはコメントの欄から IDE で送れます。受信箱・差分・会話は無料、承認・コメント・解決・マージは Pro(月 US$1.50・30日間の無料試用つき)です。画面は日本語です。
GitHub は GitHub, Inc. の商標、IntelliJ IDEA は JetBrains s.r.o. の商標です。このページは GitHub, Inc.・JetBrains のいずれとも提携しておらず、承認も受けていません。
ほかに:GitHub のマージの断り(405・409) · GitHub のレビューの断り(422) · GitHub の検索の 422「Validation Failed」 · 「Resource not accessible by personal access token」 · 401「Bad credentials」 · 「Resource protected by organization SAML enforcement」 · 「API rate limit exceeded」 · GitHub の差分の 406「too_large」・3,000件 · GitHub の行のコメントの 422「must be part of the diff」 · GitHub のブランチの更新の断り(422) · GitHub のプルリクが作れない(422・403) · GitHub の自動マージの断り · GitHub の下書き・レビュー準備完了・閉じるの断り · GitHub の会話の解決の断り · GitHub のチェックが出ない(check runs の 403) · GitHub のファイルの中身が読めない · GitHub の比較の断り(404・422) · GitHub のコメント・返信の断り(ロック・アーカイブの 403) · GitHub のマージの方法の断り(405) · GitHub のブランチが見つからない(404・301) · GitHub Enterprise Server につながらない · GitHub のレビューの依頼が出ない · GitHub のプルリクの一覧が足りない · GitHub の 404・名前を変えたリポジトリ(301・307) · GitHub の行のコメントが outdated・差分に無い · GitHub のプルリクの更新・通知が遅い · GitHub の変更の提案が適用できない · GitHub の必須チェックが Expected のまま · GitHub でコードオーナーのレビューが要る · GitHub で未解決の会話がマージを止める · GitHub で署名の無いコミットがマージを止める · GitHub のマージキューでマージするブランチ · GitHub でマージが最後の push の承認を待っている · GitHub でマージがコードスキャンの結果を待っている · GitHub でマージがコード品質の結果を待っている · GitHub でコードのカバレッジの水準がマージを止める · GitHub でライセンスの適合の結果がマージを止める · GitHub でブランチのロックや更新の制限がマージを止める · GitHub でマージの後にブランチが消えない · GitHub でチームの承認(Required reviewers)がマージを止める · GitHub でシークレットスキャンのアラートがマージを止める · GitHub でスタックしたプルリクがマージできない · GitHub で push の規則が push を止める · GitHub でコミットのメタデータの規則がマージを止める · GitHub で強制 push が止められる · GitHub でプルリクをマージしても issue が閉じない · GitHub のプルリクを手元にチェックアウトできない · GitHub のプルリクがマージ先と衝突している · GitHub で変更を依頼された・レビューを取り消す · GitHub で共同作者がコミットに数えられない · GitHub で依存関係のレビューのチェックが失敗する · GitHub でフォークが同期できない · GitHub でプルリクのベースのブランチを変えられない · GitHub でプルリクを取り消せない · GitHub でプルリクのテンプレートが出ない · GitHub でプルリクにラベルや担当者が付かない · GitHub でプルリクを閉じられない・開き直せない · GitHub でプッシュ保護にプッシュを止められた · GitHub でプルリクのコメントが隠された · GitHub でデプロイが成功するまでプルリクをマージできない · GitHub でチームに頼んだレビューがメンバーに置き換わった · GitHub でプルリクのファイルの Viewed が外れた · GitHub でマージしていないプルリクがマージ済みになった · GitHub で Copilot のレビューが承認に数えられない · GitHub でワークフローが作ったプルリクのチェックが動かない · GitHub でプルリクに Update branch のボタンが出ない · GitHub で Dependabot のプルリクのチェックが失敗する · GitHub でフォークからのプルリクのチェックが失敗する · GitHub でコミットメッセージの [skip ci] でチェックが動かない · GitHub で保存期間を過ぎてチェックが消えた · GitHub の公開リポジトリのコードレビューの制限 · GitHub でリポジトリのプルリクがオフ・制限されている · GitHub でスタックのプルリクごとにチェックが走る · GitHub でスカッシュでマージ済みのコミットが次のプルリクに出る · GitHub のプルリクでファイルの差分が出ない · GitHub でフォークのプルリクのブランチに push できない · GitHub のプルリクのチェックが取り消された · GitHub で Rebase and merge が使えない · GitHub のマージのコミットメッセージが思った形にならない · GitHub のプルリクでファイルの全行が変わったと出る · GitHub の API がタイムアウトした · GitHub のプルリクで画像や文書の差分が見た目で出ない · GitHub のレビューの依頼が断られる(422) · GitHub で Copilot が作ったプルリクのチェックが動かない・承認が数えられない · GitHub の push が GH006・GH013 で断られる · GitHub で承認が足りずマージできない・数に入らない承認 · JetBrains の IDE で GitHub のプルリクを扱う · English