Skip to content

第6回 — 並列開発環境:Git Worktree × 複数エージェント

Phase 2|環境整備 / 8時間(講義2h + ワークショップ6h)前提プラットフォーム:GitHub


この回の狙い

  • 複数Issueを同時並行で進めるための環境 Git Worktree を構築する
  • ブランチ競合なしに 複数エージェントを並列稼働 させる発想を得る
  • 並列作業の成果を main へ統合する流れを体験する

タイムテーブル

時間内容
0:00–2:00講義
2:15–5:00WS① Worktree構築/2〜3タスク並列実行
5:45–7:30WS② 統合(マージ・コンフリクト処理)
7:30–8:00振り返り・OJT課題

講義(2h)スライド構成

  1. 課題:1つの作業ディレクトリだと、AIに複数タスクを同時に任せられない(ブランチ切替で混ざる)
  2. Git Worktreeとは:1つのリポジトリを 複数ディレクトリに展開し、各々で別ブランチを扱える仕組み
  3. 構成イメージ(記事の図):
    project/
    ├── main/              # メインブランチ
    ├── worktree-issue-1/  # エージェントA:Issue #1
    ├── worktree-issue-2/  # エージェントB:Issue #2
    └── worktree-issue-3/  # エージェントC:Issue #3
  4. なぜ有効か:各エージェントが独立ディレクトリ=ブランチ競合なく並列開発
  5. 複数エージェント運用の勘所:タスクを独立に分割/同じファイルを跨がない/最後に統合
  6. 運用イメージ:「夜にIssueを一斉割り当て、翌朝には対応済み」
  7. 基本コマンドgit worktree add ../worktree-issue-1 -b feature/issue-1 / git worktree list / git worktree remove
  8. 本日のゴール

💡 講師メモ:並列の効果は「独立したタスク」でしか出ない。タスク分割の良し悪しを強調する。


ワークショップ(6h)

WS① Worktree構築 & 並列実行(約2h45m)

  • [ ] git worktree add で 2〜3個の作業ディレクトリを作成(それぞれ別ブランチ)
  • [ ] 各ディレクトリで別々に claude を起動(ターミナルを複数タブ/ウィンドウで)
  • [ ] 独立した3タスクを割り当て(例:Issue #1 文言修正 / #2 バリデーション追加 / #3 README整備)
  • [ ] 並列で実装が進む様子を観察
  • [ ] 各worktreeで動作確認

WS② 統合(約1h45m)

  • [ ] 各ブランチをPR化 → mainへ順次マージ
  • [ ] 衝突が起きたら解消(第3回の応用)
  • [ ] 使い終わったworktreeを git worktree remove で片付け
  • [ ] 自分の実務での「並列化できる作業」を洗い出してメモ

⚠️ つまずきポイント:

  • 同じファイルを複数タスクで触らせると結局コンフリクト → タスクを独立に切る
  • worktreeの場所/命名がバラバラで迷子 → 命名規則を決める(worktree-issue-N
  • 並列で頭がパンクする → まず2並列から

OJT課題(次回まで)

実務で2件以上のタスクをWorktree並列で進め、効果(時間・手戻り)を記録する。

成果物

  • Worktree並列の構成と実行ログ
  • 並列化できた/できなかったタスクの仕分けメモ

🎯 回のゴール

Git Worktreeで複数エージェントを並列稼働させ、成果をmainへ統合できる。

講師チェック

  • [ ] worktreeを複数作成・削除できた
  • [ ] 独立タスクを並列実行し統合できた
  • [ ] 並列に向く/向かないタスクを区別できる