CC Guide
入門

Worktree で並行作業を安全に行う

Git worktree を使って複数の Claude Code セッションを独立して並行実行する方法

worktreeparallelgit

Worktree で並行作業を安全に行う

複数のタスクを同時に進めたい場合、Git worktree を使うと各 Claude Code セッションに独立したコードベースのコピーを提供でき、ファイルの競合を防げます。

Worktree の起動

# 名前付きワークツリー
claude --worktree feature-auth
claude -w feature-auth

# ランダム名のワークツリー
claude --worktree
claude -w

並行作業の構成例

複数のターミナルを開き、それぞれ別のワークツリーで Claude Code を起動します。

Terminal 1: claude                    # メイン開発
Terminal 2: claude -w feature-auth    # 認証機能の実装
Terminal 3: claude -w bugfix-456      # バグ修正

各ワークツリーは以下の性質を持ちます。

  • 独立したファイル状態とブランチ -- 他のセッションの変更に影響されない
  • 共有のリポジトリ履歴 -- git log や git remote は共通
  • 競合の防止 -- 複数の Claude インスタンス間でファイルの上書きが起きない

サブエージェントでの Worktree 分離

カスタムエージェント定義で isolation: worktree を設定すると、サブエージェントが自動的に独立したワークツリーで実行されます。変更がない場合は自動的にクリーンアップされます。

# .claude/agents/researcher.md
---
name: researcher
description: "Code research and analysis"
isolation: worktree
---

エージェントチームでの活用

エージェントチーム機能でも、チームメイトにワークツリーを使用するよう指示できます。チームメイトのエージェント定義に isolation: worktree を設定するか、チームリーダーから指示を出します。

Worktree の注意点

  • 変更をメインブランチにマージするには、通常の Git 操作(PR作成やマージ)を使用
  • 不要になったワークツリーは git worktree remove で削除
  • ブランチ名はわかりやすい名前にする(feature-xxx, fix-xxx など)

いつ Worktree を使うべきか

シチュエーションWorktree の必要性
1つのタスクに集中不要(通常セッションで十分)
2つの独立した機能を同時開発推奨
バグ修正と新機能開発を並行推奨
複数人で同じリポジトリを編集必須に近い

あわせて読む

関連コンテンツ