ChatGPTやClaudeなどのAIエージェントがコードを書く時代、「Gitという安全装置」がなぜ必須なのかを非エンジニアにもわかりやすく解説します。AIとGitを組み合わせるだけで、作業の安心感が格段に変わります。
ChatGPTやClaude、GitHub Copilot、Claude Code、OpenAI Codexなど、AIがコードを書き、ファイルを直接書き換えてくれる時代になりました。「指示するだけでファイルを作ってくれる」「複数のファイルを一気に修正してくれる」という体験は、一度使うと手放せません。
しかし、そこには見落とされがちなリスクがあります。AIは、消しゴムの跡を残さずにファイルを書き換えます。うまくいかなかったときに「元の状態」に戻す手段がなければ、便利さはそのまま大きな事故につながります。
本記事では、AIエージェントに作業を任せるなら、なぜ「Git(ギット)」がセットで必要なのかを、非エンジニアの方にも分かるように解説します。GitとGitHubの違い、AIツールに付いている「巻き戻し」機能との使い分け、最初に決めておきたいルールまでを整理します。
1. Gitなしだと何が起きるか
AIエージェントに「このコードを修正して」と頼むと、AIは迷わず実行します。ツールによっては編集の前に確認が入りますが、「はい」を押し続けるうちに、いつのまにか広い範囲が書き換わっていることは珍しくありません。
問題は、AIが間違えることです。AIはもっともらしい修正を自信満々に出してきますが、その修正が正しいとは限りません。しかも人間と違い、AIは一度に数十のファイルを変更できます。「なんだか動かなくなった」と気づいたときには、どこが、いつ、どう変わったのかすら追えない状態になっています。
「前の状態に戻したい」と思っても、記録がなければ手作業で思い出しながら直すしかありません。バックアップを取っていたとしても、どの時点のものか、どのファイルを戻せばよいのかを判断するだけで大きな手間がかかります。
たとえば、ホームページの見出しの色だけを変えてほしいと頼んだつもりが、AIが「ついでに」全体のデザインの設定まで整理してしまい、別のページのレイアウトが崩れた。こうしたことは、AIに作業を任せる現場で実際によく起こります。依頼した範囲だけを直してくれるとは限らない、という前提で備えておく必要があります。
2. Gitありだと何が変わるか
Gitは、ファイルの状態を「セーブポイント」として記録しておけるツールです。記録のことを「コミット」と呼びます。作業の前に、次の一行を打つだけで、その時点のファイルの状態が丸ごと記録されます(初めて使うときだけ、記録に残す名前とメールアドレスの設定が1回必要です)。
git add . && git commit -m "作業前の状態"あとはAIに好きなだけ作業させて構いません。もし結果が気に入らなければ、次の2行で作業前の状態に戻せます。
git reset --hard
git clean -fd1行目はAIが書き換えたファイルを元に戻し、2行目はAIが新しく作ったファイルを削除します(.gitignoreで記録の対象外にしたファイルは消えません)。どちらも取り消せない操作で、まだ記録していない自分の変更も一緒に消えます。実行する前に、残したいファイルがないかを必ず確認してください。
こうして「やってみて、ダメなら戻す」というサイクルを気軽に回せるようになることが、Gitを使う最大の価値です。
3. AIエージェントとGitの相性が良い3つの理由
理由1:AIは間違える
AIは確率的に答えを組み立てるツールです。正しい答えを出すことが多い一方で、自信を持って間違えることもあります。人間なら「念のため確認しよう」と立ち止まる場面でも、AIは止まりません。Gitは、その間違いを「いつでも取り消せるもの」に変える安全装置になります。
理由2:変更の範囲が人間より圧倒的に広い
人間が1時間かけて修正する量を、AIは数十秒で終えてしまいます。スピードは魅力ですが、その分、ミスの影響範囲も広くなります。Gitがあれば、広い範囲の変更もまとめて取り消せます。
理由3:何を変えたかを説明できる
git diff というコマンドを使えば、AIが何をどう変えたかを一覧で確認できます。「動かなくなった」ときも変更箇所を特定しやすく、AIの作業を人が確認する習慣が自然と身につきます。記録には「いつ、何のために変えたか」のメモも残るため、後から振り返るときの手がかりにもなります。git log というコマンドで、これまでの記録を一覧で見返すこともできます。
4. AIツールの「巻き戻し」機能があればGitは不要?
最近のAIコーディングツールには、独自の「巻き戻し」機能が付いているものがあります。たとえばClaude Codeには、依頼を送るたびに作業前のファイルの状態を自動で残す機能(チェックポイント)があり、/rewind と入力するか、入力欄が空のときにEscキーを2回押すと、以前の状態に戻せます。
とても便利な機能ですが、Gitの代わりにはなりません。公式の説明によると、巻き戻せるのはClaudeがファイル編集の機能で書き換えた分だけで、コマンドの実行によって起きた変更や、人が自分で直した分は対象外です。また、残された状態は一定期間(初期設定では約30日)が過ぎると削除されます。
比較項目 | AIツールの巻き戻し機能 | Git |
|---|---|---|
得意なこと | 直前の作業をすぐに取り消す | 長期間の変更履歴を残し、どの時点にも戻る |
対象になる変更 | AIがファイル編集機能で行った変更が中心 | 記録したフォルダ内のすべての変更 |
残る期間 | 一定期間で削除される | 消さない限り残り続ける |
別のツール・人との共有 | できない | できる(GitHubなどと組み合わせる) |
Claude Codeの公式ドキュメントでも、巻き戻し機能は「その場ですばやく戻すためのもの」とされ、長く残す履歴や共同作業にはGitを使い続けるよう案内されています。つまり、「その場の取り消しは巻き戻し機能、確実な記録はGit」という使い分けが基本です。
5. 【重要】GitとGitHub、混同していませんか?
「Gitを使う」と聞いて、次のように思った方はいないでしょうか。
- ファイルがインターネットに公開されてしまうのでは?
- GitHubのアカウントが必要なのでは?
- 社外秘のファイルには使えないのでは?
これはよくある誤解です。GitとGitHubはまったくの別物です。
比較項目 | Git | GitHub |
|---|---|---|
正体 | ソフトウェア(ツール) | サービス(会社) |
動く場所 | 自分のパソコンの中 | インターネット上 |
インターネット接続 | 不要 | 必要 |
アカウント | 不要 | 必要 |
たとえ | Wordの「変更履歴」機能 | OneDriveやDropboxのような保管場所 |
Gitは「変更の履歴を記録する機能」、GitHubは「その履歴をインターネット上に保管・共有するサービス」です。GitHubを使わなくても、自分のパソコンの中でGitを使うだけで十分に役立ちます。なお、GitHubを使う場合も「非公開(プライベート)」の設定にすれば、許可した人以外には見えません。
6. 一歩進んだ使い方:「試す場所」を分ける
慣れてきたら、「ブランチ」という機能も使えます。ブランチは、今の状態から枝分かれした「試し書き用の場所」です。本番の状態はそのまま残しておき、AIには枝分かれした場所で作業させる。うまくいったら本番に取り込み、だめなら枝ごと捨てる、という進め方ができます。
たとえば「トップページのデザイン変更」と「問い合わせフォームの修正」を別々のブランチで進めれば、片方がうまくいかなくても、もう片方には影響しません。AIに「新しいブランチを作ってから作業して」と頼むだけで、この使い分けができます。
さらに、AIに複数の作業を同時に進めさせたい場合は、「worktree(ワークツリー)」という機能が役立ちます。これは、同じプロジェクトを別々の作業フォルダに展開し、それぞれで別の作業を進められるGitの標準機能です。AI同士が同じファイルを同時に書き換えてぶつかる心配がなくなります。
Claude Codeには、作業ごとに別のworktreeを用意して起動するための仕組みが用意されています。Claude Codeの公式ドキュメントでも、作業ごとに別のworktreeでClaude Codeを起動し、ある作業で機能を作りながら、別の作業で不具合を直す、といった並行作業の進め方が紹介されています。
7. 導入の手順と、最初に決めておきたい3つのルール
Gitの導入はシンプルです。まずGit本体をインストールします(Macは開発者向けの追加ツールに含まれており、WindowsはGit for Windowsを入れます)。そのうえで、管理したいフォルダで次の一行を打つだけです。
git initこの設定が効くのは、そのコマンドを打ったフォルダとその中身だけで、パソコン全体が対象になるわけではありません。難しいコマンドを覚える必要もなく、AIエージェントに「ここまでの変更をコミットして」と頼めば、AIが代わりに記録してくれます。パソコンの故障に備えて記録をパソコンの外にも残したい場合は、GitHubの非公開の保管場所に送っておく方法もあります。
始めるときは、次の3つだけ決めておくと安心です。
- AIに作業させる前に必ずコミットする:セーブポイントが無ければ戻れません。作業の区切りごとに記録する習慣をつけます
- 秘密情報は記録の対象から外す:APIキーやパスワードを書いた「.env」ファイルは、最初のコミットより前に「.gitignore」という設定ファイルに書いて、記録の対象外にします。すでに記録してしまった後に書き足しても、記録からは外れません。記録に残したままGitHubへ送ると、情報漏洩につながります
- 元に戻すコマンドは人が確認してから実行する:
git reset --hardなどの取り消せない操作は、AIに任せきりにせず、実行前に内容を確認するルールをルールファイル(CLAUDE.mdやAGENTS.md)にも書いておきます
8. まとめ:GitはAIエージェント時代の「Ctrl+Z」
AIエージェントは強力です。しかし、強力な道具ほど安全装置が必要になります。
- AIは間違えるうえに、一度に広い範囲を書き換える。記録がなければ元に戻せない
- Gitで作業前に記録しておけば、「やってみて、ダメなら戻す」が気軽にできる
- AIツールの巻き戻し機能は便利だが、対象と保存期間に限りがあるため、Gitの代わりにはならない
- GitとGitHubは別物。Gitだけなら自分のパソコンの中で完結し、公開されることもない
- 秘密情報は記録の対象から外し、取り消せない操作は人が確認する
AIを使うなら、Gitはセットで導入する。それだけで、AIとの作業は格段に安心で快適になります。まずは今使っているフォルダで git init を打ち、AIに作業を頼む前の「最初のセーブポイント」を作ってみてください。
