Lesstep
Forgejo・Gitea・Codeberg・チェックが合格したらマージ・2026年10月24日に確認

Forgejo・Gitea のチェックが合格したらマージ:断られた・マージされない

マージの API(POST /api/v1/repos/持ち主/リポジトリ名/pulls/番号/merge)に merge_when_checks_succeed: true を付けると、チェックが合格したらマージするようサーバーに頼めます。予約できると、サーバーは本文の無い 201 で答えます。以下はすべて両方の今のソース(routers/api/v1/repo/pull.go・services/pull/check.go・services/automerge/automerge.go・models/pull/automerge.go)を 2026年10月24日に読んで確かめたものです。ふつうのマージの答えは Forgejo・Gitea がマージを断った理由へ。

予約で飛ばす確認と、それでも断る答え

待つものが残っていなくても、サーバーは予約します。

予約したマージがいつ行われるか

取り消すとき

DELETE /api/v1/repos/持ち主/リポジトリ名/pulls/番号/merge は、予約を取り消せば 204、予約が無ければ 404、あなたが予約した人ではなく、自分でもマージできないときは 403 user has no permission to cancel the scheduled auto merge(和訳:予約したマージを取り消す権限がありません)です。

直し方

IntelliJ IDEA で Forgejo・Gitea のプルリクを見るなら

Lesstep の Pull Request Inbox for Forgejo and Gitea は、JetBrains IDE(2024.1 以降)のプラグインです。マージの前にマージの条件を見せ、画面に出ていた先頭のコミットをマージします。チェックがまだ動いている間は、マージのダイアログで「チェックが合格したらマージ」を選べ、サーバーが 201 で答えたら、チェックが合格したらマージされると言います。1.0.17 からは、サーバーが予約を断ったとき(405)に、予約が待つ承認やチェックの失敗を挙げず、作業中や競合でないこと、そのブランチにマージできる人であることが要ると言います。予約がもうあるとき(409)は前の予約が残ると言い、文の無い 500 には、開いている依存先で止まっていると言います。1.0.18 からは、予約の前にプルリクエストを開いてからブランチが動いていないかを確かめ、動いていれば予約せずにそう言います。マージのダイアログと予約の後の知らせで、チェックが合格するまでに push されたコミットもマージされること、プルリクエストのページで予約を取り消せば止まることを言います。読むのは無料、承認・コメント・マージは Pro(月 US$1.50・30日間の無料試用つき)です。画面は日本語です。

Forgejo・Gitea・Codeberg はそれぞれの持ち主の名前、IntelliJ IDEA は JetBrains s.r.o. の商標です。このページは Forgejo プロジェクト・Codeberg e.V.・Gitea プロジェクト・JetBrains のいずれとも提携しておらず、承認も受けていません。

ほかに:Forgejo・Gitea のマージの断り(405・409) · Forgejo・Gitea の必須のチェック(不足・skipped・パターン) · Forgejo・Gitea のブランチの更新の断り(403・409・422) · Forgejo・Gitea のレビューの断り(422) · 404「The target couldn't be found.」と「not found」 · 「token does not have at least one of required scope(s)」 · Forgejo・Gitea の検索の断り(400・422) · Forgejo・Gitea のプルリクの変更ファイル(50件ずつ・changed_files) · JetBrains の IDE で Forgejo・Gitea のプルリクを扱う · English