GitHub の GH013 エラー:原因と解決策

冒頭まとめ GH013: Repository rule violations found を検索すると、秘密情報が混ざったときの対処が数多く出てきます。それは3系統あるうちの1つにすぎません。GH013 は ruleset(リポジトリに設定された規則の集まり)に違反したという符号で、中身はブランチやタグへの規則、push そのものへの規則、そして秘密情報の検知に分かれます。 見分ける手がかりは、符号のすぐ下に出ます。GitHub は Review all repository rules at に続けて、そのブランチに効いている規則の一覧を示すURL を返します。公式ドキュメントによれば、この一覧は読み取り権限さえあれば誰でも見られます。管理者に問い合わせる前に、まずここを開けば済みます。 もう1つ、bypass(規則を素通りする許可)についての誤解があります。bypass はアカウントに与える権限ではありません。ruleset は push のたびに、そのとき使われた資格情報の持ち主を bypass 一覧と照合します。だから自分を一覧に入れても、CI が別の身元で push していれば拒まれます。手元では通るのに自動処理では落ちる、という報告のほとんどはこれです。 branch protection との違いも押さえてください。公式ドキュメントは、branch protection の制限が既定では管理権限を持つ人に適用されないと明記しています。ruleset は逆で、bypass 一覧に載せない限り誰も素通りできません。管理者だから通るはずだ、という前提はここで崩れます。 エラーの概要 出力は次の形になります。実際に報告された表示です。 remote: error: GH013: Repository rule violations found for refs/heads/main. remote: Review all repository rules at http://github.com/OWNER/REPO/rules?ref=refs/heads/main remote: remote: - Changes must be made through a pull request. To https://github.com/OWNER/REPO ! [remote rejected] main -> main (push declined due to repository rule violations) error: failed to push some refs to 'https://github.com/OWNER/REPO' 読む場所は2つです。1つ目は Review all repository rules at のURL で、対象のブランチに効いている規則がすべて並びます。2つ目はその下の箇条書きで、実際に違反した規則の名前が入ります。 ...

2026年8月7日 · ErrorLog