Skip to main content

ステータスチェックについて

ステータスチェックを利用すると、コントリビュート先のリポジトリの条件をコミットが満たしているかどうかを知ることができます。

ステータスチェックは、リポジトリにプッシュをするたびに実行される継続的インテグレーションのビルドのような、外部のプロセスに基づいています。 pull request 中の個々のコミットの隣に、ステータスチェックの pendingpassingfailing などのステータスが表示されます。

コミットと状態の一覧のスクリーンショット。

書き込み権限があるユーザまたはインテグレーションなら誰でも、リポジトリのステータスチェックを任意のステータスに設定できます。

ブランチへの最後のコミットの全体的なステータスは、リポジトリのブランチページあるいはリポジトリのプルリクエストのリストで見ることができます。

リポジトリでステータスチェックが要求されているなら、必須のステータスチェックをパスしてからでないと保護されたブランチにあなたのブランチはマージできません。 詳しくは、「保護されたブランチについて」を参照してください。

Note

スキップされたジョブは、その状態が "成功" として報告されます。 必要なチェックであっても、pull request のマージを妨げるものではありません。

GitHub Enterprise Serverでのステータスチェックの種類

GitHub Enterprise Server のステータスチェックには 2 種類あります。

  • チェック
  • コミットのステータス

_チェック_は、行のアノテーション、より詳細なメッセージを提供するという点で_コミット状態_とは異なっており、GitHub App でのみ利用できます。

Note

GitHub Actions は、ワークフローの実行時にコミット状態ではなく、チェックを生成します。

Organization オーナー、およびリポジトリにプッシュアクセスを持つユーザは、GitHub Enterprise Server の API でチェックおよびコミット状態を作成できます。 詳細については、「チェック用 REST API エンドポイント」および「コミットのステータス用の REST API エンドポイント」を参照してください。

チェック

リポジトリで_チェック_がセットアップされている場合、pull request には [チェック] Tab があり、そこからチェックからの詳細なビルドの出力を見て、失敗したチェックを再実行できます。

Note

リポジトリに対して "コミット状態" ではなく "チェック" を設定した場合、[Checks] タブには pull request のみが表示されます。****____

コミットの特定の行でチェックが失敗している場合、その失敗、警告、注意に関する詳細が pull request の [ファイル] タブの関連するコードの横に表示されます。

[チェック] タブの下のコミットドロップダウンメニューを使って、pull request 中のさまざまなコミットのチェックのサマリー間を移動することができます。

pull request の [チェック] タブのスクリーンショット。 [チェック] タブとコミットを選ぶドロップダウン メニューが、どちらも濃いオレンジ色の枠線で囲まれています。

個々のコミットに関するチェックのスキップとリクエスト

リポジトリがプッシュに対して自動的にチェックをリクエストするように設定されている場合、プッシュする個々のコミットについてチェックをスキップできます。 リポジトリがプッシュに対して自動的にチェックをリクエストするよう設定されて_いない_場合、プッシュする個々のコミットについてチェックをリクエストできます。 これらの設定について詳しくは、「チェック スイート用 REST API エンドポイント」を参照してください。

コミット メッセージにコマンドを含めることで、pushpull_request イベントによってトリガーされるワークフロー実行をスキップすることもできます。 詳細については、「ワークフロー実行をスキップする」を参照してください

また、コミットに対する "すべて" のチェックをスキップもしくはリクエストするには、以下のトレーラー行のいずれかをコミット メッセージの末尾に追加します。__

  • コミットの_チェックをスキップ_には、コミットメッセージと変更の短く意味のある説明を入力してください。 コミットの説明の後、終了引用符の前に、2 つの空の行を追加してから skip-checks: true を追加します。

    $ git commit -m "Update README
    >
    >
    skip-checks: true"
    
  • コミットのチェックを_リクエスト_するには、コミットメッセージと変更の短く意味のある説明を入力してください。 コミットの説明の後、終了引用符の前に、2 つの空の行を追加してから request-checks: true を追加します。

    $ git commit -m "Refactor usability tests
    >
    >
    request-checks: true"
    

既定では、Git は連続する改行を自動的に削除します。 コミット メッセージを入力したとおりのままにするには、コミットで--cleanup=verbatimオプションを使用します。 詳細については、Git ドキュメントにある「--cleanup=<mode>」を参照してください。

チェック の保持

必須であり、アーカイブされているチェックと pull request をマージするには、チェックを再実行する必要があります。