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

Pre-receive フックを使って作業する

Pre-receive フックは、コミットがリポジトリにプッシュされる前に、コントリビューションに対するルールを強制します。

Pre-receive フックは、コントリビューションがリポジトリまたは Organization の方針を確実に満たすために、リポジトリにプッシュされたコードに対してテストを実行します。 コミット内容がテストに合格すると、プッシュはリポジトリに受け入れられます。 コミット内容がテストに合格しなかった場合、プッシュは受け入れられません。

プッシュが受け入れられない場合は、失敗した pre-receive フックに対応するエラーメッセージが表示されます。

$ git push
Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 916 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
remote: always_reject.sh: failed with exit status 1
remote: error: rejecting all pushes
! [remote rejected] main -> main (pre-receive hook declined)
error: failed to push some refs to ''

失敗した pre-receive フックのエラーメッセージ

GitHub Enterprise Server サイト管理者は、Organization またはリポジトリの pre-receive フックを作成および削除することができます。また、Organization またはリポジトリ管理者は、pre-receive フックを有効または無効にすることができます。 詳細は「ポリシーを強制するために pre-receive フックを使用する」を参照してください。

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.