Claude Code 入門 第9回
Git と組み合わせる(コミットを頼む・「!」でコマンド)

この記事でわかること
- コミットの頼み方と、結果の確かめ方
- 「!」で Git のコマンドを自分で実行する方法
- auto モードで止まる Git の操作と、プッシュの前の確認
確認した環境: Claude Code 2.1.296 / 撮影は Linux のターミナル / 2026年10月11日に確認
Claude Code には、Git の操作も頼めます。この記事では、直した内容をコミットしてもらう手順と、「!」で自分で Git のコマンドを実行する方法を、編集部の検証環境の画面で説明します。
コミットを頼む
編集部の todo-app(やることリストのアプリ)は、Git のリポジトリ(履歴を記録するフォルダ)にしてあり、「最初の版」のコミットだけがありました。そこから Claude Code に 3 つの不具合を直してもらい(第 5 回・第 6 回)、まだコミットしていない状態です。
-
変更の確認とコミットを頼む
入力欄に、コミットしてほしいことを書いて送ります。編集部では、修正ごとにコミットを分けるよう頼みました。

コミットを頼んだところ。① まだコミットしていないという Claude の報告 ② 送った依頼撮影・作図: 編集部 -
名前とメールアドレスが未設定と言われたら、設定する
Git では、コミットに作成者の名前とメールアドレスを記録します。編集部の環境ではこれを設定していなかったため、コミットができず、Claude が設定のコマンドを案内しました。

コミットできなかったときの報告。① 作成者の名前とメールアドレスが未設定という説明 ② 設定のコマンドの案内 ③ 設定のあとに作る 3 つのコミットの予定撮影・作図: 編集部 ①のとおり、直した内容は消えていません。Claude は「コミットに記録する名前とメールアドレスはあなたの情報なので、こちらで勝手に決めずに設定をお願いします」として、②のコマンドを案内しています。
②のコマンドの「あなたの名前」と「you@example.com」を自分のものに変えて、Claude Code の入力欄でそのまま実行します。行の先頭の「!」は、Claude を通さずにコマンドを実行する印です(次の章で説明します)。
! git config --global user.name "あなたの名前" ! git config --global user.email "you@example.com"
「!」を付けて、名前を設定するコマンドを入力したところ。① 入力したコマンド ② シェルモードの表示撮影・作図: 編集部 Claude の案内のとおり、
--globalを付けると、そのパソコンのすべてのリポジトリで同じ名前とメールアドレスが使われます。このリポジトリだけで使うときは、--globalを外します。 -
設定が済んだことを伝えて、結果を確かめる
名前とメールアドレスを設定したら、そのことを Claude に伝えます。Claude が、修正ごとにコミットを作ります。

コミットが済んだときの報告。① 作った 3 つのコミット ② 作成者 ③ リモートにはプッシュしていないという報告撮影・作図: 編集部 編集部の環境では、①のように 3 つのコミットに分かれ、それぞれに内容がわかるメッセージが付きました。②の作成者は、設定した名前とメールアドレスです。③のとおり、リモート(GitHub などのサーバー)へのプッシュ(送ること)はしていません。
このときは auto モードでした。画像のいちばん上の「Allowed by auto mode classifier」は、auto モードの分類器が直前の操作を許可したという表示です。
報告には「ブラウザでの動作確認はまだです」とも書かれています。Claude が確かめたことと、まだ確かめていないことを読み分けて、残りは自分で確かめます。
「!」で自分でコマンドを実行する
入力欄の先頭に「!」を入力すると、シェルモードになります。シェルモードでは、Claude を通さずに、ターミナルのコマンドをそのまま実行します。実行の結果は会話に入り、Claude がそれを読んで返事をします。
編集部では、コミットの履歴を git log --oneline で確かめました。
! git log --oneline

①の結果では、新しいコミットが上に並びます。いちばん下の「最初の版」の上に、今回の 3 つのコミットがあります。②では、Claude が結果を読んで返事をしています。その下では、まだしていないこと(ブラウザでの確認と、リモートへのプッシュ)も挙げています。
「!」を入力すると、入力欄の下に「! for shell mode」と表示されます(3 枚目の画像の②)。公式のドキュメントでは、テストを実行する ! npm test が例に挙がっています。
ほかにも頼めること
公式のドキュメントには、Git の操作を頼む例が載っています。英語の例を日本語にすると、次のようになります。
変更したファイルを教えてください
feature/quickstart という名前のブランチを作ってください
最近の 5 件のコミットを見せてください
マージの競合の解消を手伝ってください
起動と同時に頼むこともできます。次は、公式のドキュメントにある例です(変更を、内容がわかるメッセージでコミットする)。
claude "commit my changes with a descriptive message"
GitHub の PR(プルリクエスト。変更を取り込んでもらうための依頼)も頼めます。Claude は GitHub CLI の gh pr create で PR を作ります。変更を見直したいときは、/diff(作業中の変更を確かめる)、/code-review(不具合がないかを確かめる。/review でも同じ)、/security-review(安全の面から確かめる)も使えます。
auto モードで止まる Git の操作
auto モード(第 6 回)では、Git の操作も、別の AI(分類器)が確かめてから進みます。公式のドキュメントによると、既定では次のように扱われます。
| 扱い | Git の操作の例 |
|---|---|
| 止める | force push(リモートの履歴を強制的に書き換えるプッシュ)、git reset --hard など、まだコミットしていない作業を捨てる操作、この会話で作っていないコミットの --amend(書き換え) |
| 確認なしで進める | 作業中のリポジトリへのプッシュ、依頼に合った PR の作成 |
push の前に必ず確かめたいときは、許可ルールの ask(確認する)に Bash(git push *) を入れます。自分の設定(~/.claude/settings.json)か、プロジェクトの設定(.claude/settings.json)に書きます。
{
"permissions": {
"ask": [
"Bash(git push *)"
]
}
}
ask のかわりに deny に入れると、プッシュそのものを止められます。
コミットに付く「Co-Authored-By」の行
Claude Code が作るコミットには、既定で Co-Authored-By の行(Claude と一緒に作ったことを示す行)が付きます。PR の説明にも、同じような一文が付きます。付けたくないときは、設定の attribution で変えられます。次のように false にすると、すべて付かなくなります(v2.1.281 以降)。
{
"attribution": false
}
次の回では、VS Code の拡張機能で Claude Code を使う方法を説明します。
参考にした公式の情報
この記事は、ハック!でAI編集部が AI を使って執筆しました。画面の画像は、編集部の検証環境で実際に操作して撮影したものです(引用の画像は出典を記載しています)。内容の誤りはお問い合わせからお知らせください。
連載
Claude Code 入門全 12 回の目次
- 1Claude Code とは? できること・使える場所・料金
- 2Claude Code をインストールする(Mac・Windows・Linux)
- 3Claude Code を初めて起動する(テーマ・ログイン・フォルダの信頼)
- 4Claude Code に最初の質問をする(@ でファイルを指定)
- 5Claude Code にファイルを直してもらう(変更の確認と許可)
- 6権限モードを使い分ける(auto・manual・accept edits・plan)
- 7CLAUDE.md でルールを覚えさせる(/init・/memory)
- 8よく使うコマンドとキー操作
- 9Git と組み合わせる(コミットを頼む・「!」でコマンド)(この記事)
- 10Claude Code を VS Code で使う(拡張機能)
- 11画面の画像を渡して Claude Code に直してもらう
- 12Claude Code がうまく動かないときの対処