Cline に git push させない手順: .clinerules では止まらず pre-push フックで止まった
2026年11月3日
Cline に Git の操作を頼むときに、git push を止める手順をメモしました。.clinerules に「push しない」と書いても push されたので、Git の pre-push フックで止めます。
経緯
Cline に「README.md の変更をコミットして、origin に push してください」と頼みました。.clinerules に「git push は実行しない」と書いておいたのですが、Cline はコミットしたうえで push まで実行し、push 先に届いていました。
環境
- macOS 26.6
- Cline 0.0.49(CLI 3.0.74)
- モデル
cohere/north-mini-code:free
動きはモデルによって変わります。
手順
pre-push フックを置く
リポジトリの .git/hooks/pre-push に、push を断るフックを置きます。
terminal$ cat > .git/hooks/pre-push <<'EOF'
#!/bin/sh
echo "push はこのリポジトリでは手で行います" >&2
exit 1
EOF
$ chmod +x .git/hooks/pre-push
Cline に頼んで止まるかを見る
この状態で Cline に「コミットして push して」と頼むと、コミットはされ、push は2回とも止まりました。
terminal[Command exited with code 1]
[stderr]
push はこのリポジトリでは手で行います
error: failed to push some refs to '...'
Cline は --no-verify でフックを飛ばそうとはせず、最後に「push はリポジトリの方針で止められている」と報告しました。
自分で push するとき
フックを外すか、--no-verify を付けます。
terminal$ git push --no-verify
止め方ごとの違い
同じ指示を、条件を変えて試しました。
| 条件 | push 先に届いたか | Cline の報告 |
|---|---|---|
| 設定のまま(自動承認あり) | 届かなかった | 「push しました」 |
.clinerules に「git push は実行しない」 | 届いた | 「push しました」 |
自動承認なし(--auto-approve false) | 届かなかった(コミットもされない) | 何も実行せずに終了 |
| pre-push フックあり | 届かなかった | 「方針で止められている」 |
.clinerules で禁じたときは、モデルの考えの中に「Git のルールがあるけれど」とあり、そのうえで push していました。ほかの端末やほかの人の push も止めたいときは、リモートのブランチ保護も使います。
注意点
参考文献
著書
使い方Cline に git push させない手順: .clinerules では止まらず pre-push フックで止まった
チートシートCline で何が自動化できる?設計・実装・テスト・運用のユースケース地図
チートシートCline コマンド/アクション早見表:よく使う操作 50 連発
検証・比較GitHub Copilot Workspace と Cursor/Cline の比較検証:仕様駆動の自動化能力はどこまで?
検証・比較Cline × Claude/GPT/Gemini モデル比較:長文理解とコード品質の相性
チートシートCline のアーキテクチャ超図解:実行キュー/ツール権限/差分適用の流れ
使い方Git のタグ(tag)の使い方: 付けたタグは push では送られない。--follow-tags でも軽いタグは残る
使い方Cline に git push させない手順: .clinerules では止まらず pre-push フックで止まった
使い方Git パフォーマンス運用:gc/pack 設計/prefetch で巨大リポを加速させる
使い方Git worktree 速習:複数ブランチを同時並行で開発する最短レシピ
検証・比較Git の依存取り込み比較:subtree vs submodule — 運用コストと安全性の実態
トラブルシュートGit の index.lock 残留問題を解決:並行実行・クラッシュ後の正しい対処法
使い方Orca の使い方: Claude Code のサブスクリプションのまま使える。最初に変える設定は権限
チートシートCodex の料金プラン一覧: Plus の5時間の枠は、GPT-6.1 Sol で応答160〜200回だった
挙動Codex の sandbox の設定: read-only でも .env は読める。モードごとにできること
チートシートClaude Code のスラッシュコマンド一覧: 2.1.311 の / に出るコマンドを、用途別に並べた
チートシートOllama のコマンド一覧: run は、入っていないモデルなら pull から始める。よく使う10個の違い
使い方Mermaid CLI(mmdc)のインストールと使い方: 10枚の図は、1つの Markdown にまとめると4倍速く書き出せた
