ワークツリーと並行開発
コンフリクトなしで複数機能を同時に進める
⏱ 想定 ~5 分
01 · 読む
もし 2 つの機能を同時に進められて、お互いのファイルを踏まずに済むとしたら?普段はプロジェクトに 1 ブランチ、1 セットのファイルです。認証機能を実装中に重大バグが入ってきたら、作業を stash して、ブランチを切り替え、リズムを失うことになります。
Git ワークツリーはこれを解決します。ワークツリーは別々の作業ディレクトリで、メインプロジェクトと同じ git 履歴を共有します。それぞれのワークツリーには自分のブランチとファイルがあります。Claude Code にはワークツリーサポートが組み込まれていて — フラグ 1 つで隔離されたワークスペースを起動できます。
💡 想像してみてくださいオフィスに机が 1 つではなく 2 つあると想像してください。それぞれの机に作業中のドキュメントのコピーがあって、両方とも同じファイルキャビネット (git 履歴) に繋がっています。机 1 で機能、机 2 でバグ修正と作業ができ、紙を机の間で動かす必要はありません。
ポイントまとめ
- ワークツリーは同じ git リポジトリを共有する別々の作業ディレクトリ
- 各ワークツリーは自分のブランチとファイルを持つ
- stash、ブランチ切り替え、リズム喪失が不要
- Claude Code は --worktree で自動的にワークツリーを作る
02 · コード例
--worktree フラグでワークツリーを作ります。それぞれが自分のブランチとディレクトリを持ちます。
ワークツリーを作る
# Start a Claude session in an isolated worktree
claude --worktree feature-auth
# Start another session for a bug fix
claude --worktree bugfix-login
# Auto-generate a random worktree name
claude --worktree
裏で何が起きるか
Worktree location: .claude/worktrees/feature-auth/
Branch created: worktree-feature-auth
Files: Full copy of your project
Git history: Shared with main repo
各ワークツリーは .claude/worktrees/ の中に自分のディレクトリと自分の git ブランチを持ちます。2 つの Claude セッションが同時にファイルを編集してもコンフリクトしません。終わったら、変更のないワークツリーは自動でクリーンアップされます。
03 · 読む
ワークツリーは、並行する Claude セッションで特に強力です。以下は典型的なワークフローです。
1. メインディレクトリで機能を実装中 2. バグ報告が入ってくる — claude --worktree bugfix-123 3. バグ修正セッションは自分のコピーで独立して作業 4. 修正したら、bugfix ブランチを main にマージ 5. リズムを失わずに機能の作業を続行
サブエージェントの中でもワークツリーを使えます。サブエージェントの SKILL.md フロントマターに isolation: worktree を加えると、自動的に自分のワークツリーで作業します — ファイル編集が必要だがメインの作業ディレクトリに影響させたくないタスクに最適です。
ポイントまとめ
- 複数の Claude セッションを並行で、それぞれ自分のワークツリーで走らせる
- 終わったらワークツリーのブランチをマージで戻す
- サブエージェントは isolation: worktree でワークツリーを使える
- .claude/worktrees/ を .gitignore に追加する
04 · 読む
本当に大規模な変更 — 100 ファイルにまたがる関数のリネーム、または API マイグレーション — のために、Claude Code は /batch コマンドを提供します。これはタスクを独立した単位に分解し、それぞれにサブエージェントを生成し、それぞれが自分のワークツリーで作業します。
各サブエージェントは自分の部分のために 1 つのドラフトプルリクエストを作ります。あなたはレビューし、良いものをマージし、他のものを反復します。これがプロは大規模リファクタリングをどう扱うかです — 独立してレビュー可能な単位に分けます。
ポイントまとめ
- /batch は大きなタスクを独立した単位に分解する
- 各単位は自分のワークツリーと自分のサブエージェントを持つ
- それぞれがレビュー用にドラフト PR を作る
- 大規模リファクタリングとマイグレーションに最適
05 · クイズ
Claude のワークツリーセッションが終了したとき、未コミットの変更がないとどうなりますか?
- ワークツリーは自動でクリーンアップされる
- ワークツリーは手動で削除するまでずっと残る
- Claude が閉じる前にコミットするよう求める
- ワークツリーがバックアップディレクトリに移される
06 · ドラッグ分類
これらの並行ワークツリーのワークフローの手順を正しい順序に並べてください。
(このセクションはインタラクティブです — JavaScript を有効にしてください。)
⚠ 全機能のインタラクティブ体験には JavaScript が必要です。JavaScript を有効にして再読み込みしてください。
※ このサイトは独立した教育プロジェクトで、Anthropic の公式製品ではありません。Claude™ は Anthropic, PBC の商標です。