Claude Code Worktreeで並列開発する方法|複数タスクを同時進行
Claude CodeとGit Worktreeを組み合わせた並列開発の手法を解説。複数タスクの同時進行、セットアップ方法、運用パターン、注意点まで実務で再現できるレベルで紹介します。

Claude Codeにリファクタリングを任せて15分。テストの追加を依頼してさらに10分。その間、ターミナルの前でただ待っている — この「AIの実行待ち時間」は、Claude Codeを使い始めた開発者が最初にぶつかる生産性のボトルネックです。
解決策は Git Worktree との組み合わせです。1つのリポジトリから複数の独立した作業ディレクトリを作成し、それぞれで別のClaude Codeセッションを同時に動かす。これにより「待ち時間」が「並列作業時間」に変わります。
本記事では、Worktreeの基礎からClaude Codeとの連携パターン、3つの実用的な使い分け、リソース管理の注意点までを解説します。Claude Codeの基本についてはClaude Code完全ガイドを参照してください。
結論 — Worktreeで「待ち時間」を「作業時間」に変える
Git Worktreeを活用すれば、1つのリポジトリから複数の作業ディレクトリを作成し、それぞれで独立したClaude Codeセッションを同時に動かせます。Claude CodeがタスクAを実行している間に、別のWorktreeでタスクBに着手する。この並列化が実現する状態は以下の通りです。
Before(Worktreeなし):
10:00 タスクA開始(Claude Codeに依頼)
10:15 タスクA完了 → レビュー
10:20 タスクB開始(Claude Codeに依頼)
10:35 タスクB完了 → レビュー
→ 合計35分(うち待ち時間25分)
After(Worktreeあり):
10:00 Worktree-1: タスクA開始(Claude Codeに依頼)
10:02 Worktree-2: タスクB開始(Claude Codeに依頼)
10:15 Worktree-1: タスクA完了 → レビュー
10:17 Worktree-2: タスクB完了 → レビュー
→ 合計17分(並列実行で18分短縮)
Git Worktreeの基礎
Git Worktreeは、1つのGitリポジトリから複数の作業ディレクトリ(ワーキングツリー)を作成するGitの標準機能です。追加のツールインストールは不要で、Git 2.5以降であれば使えます。
通常のGit運用では、ブランチを切り替えるたびに以下の手間が発生します。
- 作業中の変更を
git stashで退避 - ブランチを切り替え
node_modulesの再インストール(依存関係が異なる場合)- 作業後にブランチを戻して
git stash pop
Worktreeではこの手間が一切不要です。各ディレクトリが完全に独立しているため、並行して作業できます。
# 現在のリポジトリ構成
~/project/ # mainブランチ(通常の作業ディレクトリ)
# Worktreeを追加した後の構成
~/project/ # mainブランチ
~/project-feat-auth/ # feat/auth ブランチ(Worktree 1)
~/project-fix-login/ # fix/login ブランチ(Worktree 2)
重要な制約: 同一ブランチを複数のWorktreeで同時にチェックアウトすることはできません。ブランチの設計を事前に考えておく必要があります。
セットアップ手順
Worktreeの作成
# 新しいブランチを作成しつつWorktreeを追加
git worktree add ../project-feat-auth -b feat/auth
# 既存のブランチでWorktreeを追加
git worktree add ../project-fix-login fix/login
# 作成したWorktreeの一覧を確認
git worktree list
出力例:
/Users/dev/project abc1234 [main]
/Users/dev/project-feat-auth abc1234 [feat/auth]
/Users/dev/project-fix-login abc1234 [fix/login]
依存関係のインストール
Worktreeは作業ディレクトリが独立しているため、node_modules は共有されません。各Worktreeで依存関係をインストールする必要があります。
# Worktreeディレクトリに移動して依存関係をインストール
cd ../project-feat-auth && pnpm install
# pnpmの場合、グローバルストアからのハードリンクなので
# 実際のディスク使用量は最小限に抑えられる
pnpmを使っている場合のメリット: pnpmはパッケージをグローバルストアに保存し、ハードリンクで参照するため、複数のWorktreeに pnpm install しても実際のディスク使用量はほぼ増えません。npmやyarnを使っている場合は、Worktreeごとに node_modules の実体がコピーされるため、ディスク容量への影響が大きくなります。
Claude Codeの起動
各Worktreeディレクトリで独立したClaude Codeセッションを起動します。
# ターミナルタブ1
cd ~/project-feat-auth && claude
# ターミナルタブ2
cd ~/project-fix-login && claude
CLAUDE.mdはリポジトリのルートに配置されているため、全Worktreeで自動的に読み込まれます。追加の設定は不要です。

3つの運用パターン
パターン1: 機能開発 + バグ修正の同時進行
最も典型的なパターンです。新機能の開発中に緊急のバグ修正が入ってきた場合、ブランチの切り替えなしに即座に対応できます。
Worktree-main: ~/project/
└── Claude Code: ダッシュボード機能を開発中(feat/dashboard)
Worktree-hotfix: ~/project-fix-login/
└── Claude Code: ログインエラーの緊急修正中(fix/login-error)
実際のプロンプト例(ホットフィックス側):
fix/login-error ブランチで作業中。
src/services/auth-service.ts の login 関数で、
OAuth プロバイダからのレスポンスが null の場合に
TypeError が発生する問題を修正してほしい。
1. 原因を特定する
2. 修正を実施する
3. 再発防止テストを追加する
4. pnpm test を実行して全テストがパスすることを確認する
バグ修正が完了したらPRを作成してマージ。メインの開発作業は一切中断されていません。
パターン2: A/Bアプローチの比較検証
設計の方向性に迷っている場合、2つのWorktreeでそれぞれ異なるアプローチを試し、結果を比較する使い方です。
Worktree-A: ~/project-approach-a/
└── Claude Code: 状態管理をZustandで実装中
Worktree-B: ~/project-approach-b/
└── Claude Code: 状態管理をJotaiで実装中
実際のプロンプト例(Aアプローチ側):
このアプリの状態管理をZustandで実装してほしい。
対象はダッシュボードのフィルタリング状態。
要件:
- フィルタ条件(日付範囲、ステータス、担当者)の管理
- URLクエリパラメータとの同期
- フィルタのリセット機能
実装後、以下を教えてほしい:
- コード行数
- ボイラープレートの量
- テストの書きやすさの所感
同じ要件を2つのWorktreeで別のアプローチで実装させ、コード量・テスタビリティ・型安全性を比較して意思決定に使います。比較が終わったら、採用しなかったアプローチのWorktreeは削除するだけです。
パターン3: 複数PRの同時作成
大きなタスクを複数の小さなPRに分割して並列に作業するパターンです。
Worktree-1: ~/project-pr-types/
└── Claude Code: 型定義の整備(PR #1)
Worktree-2: ~/project-pr-tests/
└── Claude Code: テストの追加(PR #2)
Worktree-3: ~/project-pr-refactor/
└── Claude Code: リファクタリング(PR #3、PR #1 に依存)
注意点: PR間に依存関係がある場合(PR #3がPR #1のマージを前提とする等)は、依存するPRがマージされてから作業を開始してください。並列化できるのは独立したPRのみです。

リソース管理の注意点
ディスク容量の管理
各Worktreeに node_modules やビルド成果物が生成されるため、放置するとディスク容量を圧迫します。
# 不要になったWorktreeの削除
git worktree remove ../project-feat-auth
# 削除し忘れたWorktreeのクリーンアップ(ディレクトリだけ消した場合)
git worktree prune
# 全Worktreeの一覧確認
git worktree list
実用的なルール: PRがマージされたら、対応するWorktreeを即座に削除する習慣をつけてください。git worktree list を週1回確認するのも有効です。
メモリとCPUの考慮
複数のClaude Codeセッションを同時に動かすと、メモリとCPUの消費が増加します。
| 同時セッション数 | 推奨メモリ | 備考 |
|---|---|---|
| 1セッション | 8GB | 通常の開発 |
| 2セッション | 16GB | 最も一般的な並列構成 |
| 3セッション以上 | 32GB | 大規模プロジェクト向け |
各Worktreeでdev serverやテストウォッチャーを起動する場合は、さらにリソースが必要になります。実用的には2-3セッションの並列が、管理コストとリソース消費のバランスが取れるラインです。
コミット時の注意
複数のWorktreeが同じリポジトリを共有しているため、コミット操作には注意が必要です。
# 各Worktreeでコミットする際は、対象ファイルを明示的に指定する
git add src/services/auth-service.ts src/services/auth-service.test.ts
git commit -m "fix: OAuthレスポンスのnullチェックを追加"
# git add . は絶対に使わない(他のWorktreeの変更は混入しないが、
# そのWorktreeに意図せず作成されたファイルを巻き込むリスクがある)
CLAUDE.mdに git add . は使用禁止。変更ファイルを個別に git add する と記述しておくことで、Claude Codeによるコミット時にも安全性が担保されます。
セットアップの自動化
Worktreeの作成と初期セットアップを毎回手動で行うのは手間です。シェルスクリプトで自動化すると効率的です。
#!/bin/bash
# worktree-setup.sh
# 使い方: ./worktree-setup.sh feat/new-feature
BRANCH_NAME=$1
DIR_NAME=$(echo $BRANCH_NAME | tr '/' '-')
WORKTREE_PATH="../project-${DIR_NAME}"
echo "Creating worktree: ${WORKTREE_PATH} (${BRANCH_NAME})"
git worktree add "${WORKTREE_PATH}" -b "${BRANCH_NAME}"
cd "${WORKTREE_PATH}" && pnpm install
echo "Ready! Run: cd ${WORKTREE_PATH} && claude"
このスクリプトをプロジェクトルートに配置しておけば、./worktree-setup.sh feat/dashboard で新しいWorktreeの作成から依存関係のインストールまで完了します。
よくある質問
よくある質問
まとめ — Worktreeで開発の並列度を上げる
Git WorktreeとClaude Codeの組み合わせは、AIエージェントの実行待ち時間を有効活用するための実用的な手法です。セットアップは git worktree add と pnpm install の2コマンドで完了し、追加のツールは不要です。
まずは2つのWorktreeから始めてみてください。Claude Codeに1つのタスクを任せている間に、もう1つのWorktreeで別の作業を進める。この「待たない開発」の感覚を掴めば、3つ目のWorktreeを追加するタイミングも自然にわかるようになります。
ただし、並列度を上げすぎると管理コストがリソース節約を上回ります。「同時に2-3セッション、PRがマージされたら即削除」を基本ルールとして、チームの開発スループットを引き上げていきましょう。
koromo からの提案
AIツールの導入判断は、突き詰めると「投資対効果が合うか」「リスクを管理できるか」「事業にどう効くか」の3点に帰着します。koromo では、この判断に必要な材料を整理するところからご支援しています。
以下のような状況にある方は、まず現状の整理だけでも前に進むきっかけになります。
- AIで開発や業務を効率化したいが、自社に合う方法がわからない
- 社内にエンジニアがいない / 少人数で、AI導入の進め方に見当がつかない
- 外注先の開発会社にAI活用を提案したいが、何を求めればいいか整理できていない
- 「AIを使えばコスト削減できるはず」と感じているが、具体的な試算ができていない
ツールを使った上で相談したい方はお問い合わせフォームから「Claude Codeを活用した並列開発の相談」とご記載ください。初回の壁打ち(30分)は無料で対応しています。
関連記事
本記事の更新方針: 本記事は定期的に内容を見直しています。記事内の判断軸・運用パターンは執筆時点での koromo の実務的知見に基づくものであり、個別環境での効果を保証するものではありません。仕様の最新情報は必ず Anthropic 公式ドキュメント をご確認ください。


