日曜日, 7月 27, 2025
日曜日, 7月 27, 2025
- Advertisment -
ホームニューステックニュースClaude Code + Git Worktreeで実現する、ストレスフリーな複数Issue同時進行

Claude Code + Git Worktreeで実現する、ストレスフリーな複数Issue同時進行


Claude Codeを使っていて、以下のように思うことはないでしょうか?

  • 「Claude Codeで一つのタスクを実行中に、別のIssueでも並行して作業したい」
  • 「複数のClaude Codeセッションを同時に動かして開発効率を最大化したい」

一つのタスクでClaude Codeが動いている間に、別のIssueでも作業を進められたら開発効率が大幅に向上するはずです。

しかし、通常のブランチ切り替えでは、ファイルの変更状態が混在してしまい、複数のIssueを並行して進めるのは困難でした。

そんな課題を解決すべく調べていたところ、Claude Codeの公式ドキュメントでGit Worktreeとの連携について知りました。実際に試してみたところ、開発効率がUPしました!

📋 本記事では、実際に使えるClaude Codeカスタムコマンドを2つ紹介します!
コピペするだけで、すぐに複数Issue同時進行の開発ができるようになります。

この記事で解決できること

✅ 複数のClaude Codeセッションの同時実行
✅ 複数Issueの完全分離された並行開発
✅ Claude Code活用による開発フローの自動化

事前準備

VS Codeのマーケットプレイスから「Git Worktree Manager」をインストールしてください。この拡張機能により、VS Code内でworktreeの作成・切り替え・削除を視覚的に管理できます。

実際の開発ワークフロー

1. 新しいIssueに着手する

まず、Issue用のworktreeを作成します:

💡 worktreeコマンドの定義

.claude/commands/worktree.mdファイルを作成して以下をコピペしてください:

---
name: worktree
description: Git worktreeを使用して複数の作業を並行して管理
---

Git worktreeの操作を行います。引数に応じて以下の処理を実行してください。

## コマンド一覧

### add - 新規worktree作成

引数が "add issue番号>" の場合:

1. `gh issue view ` でIssueの内容を確認
2. Issue内容から適切なブランチ名を生成(形式: `feature/機能名#issue番号`3. worktreeディレクトリ名を生成(形式: `../project-issue-`4. `git worktree add  -b ` で新規worktree作成
5. 作成完了メッセージを表示

### list - worktree一覧表示

引数が "list" の場合:

1. `git worktree list` で現在のworktree一覧を表示
2. 各worktreeのブランチ名と作業ディレクトリを見やすく表示

### remove - worktree削除

引数が "remove issue番号>" の場合:

1. 該当するworktreeを特定
2. `git worktree remove ` でworktree削除
3. 削除完了を確認

### status - 全worktreeの状態確認

引数が "status" の場合:

1. 各worktreeに対して以下を実行:
   - 作業ディレクトリとブランチ名を表示
   - `git status --short` で変更状態を表示
   - 未コミットの変更がある場合は警告表示

このコマンドで以下が自動実行されます:

  • Issue #123の内容を自動取得
  • 適切なブランチ名を生成(例:feature/add-user-auth#123
  • ../project-issue-123ディレクトリに新しいworktreeを作成

2. VS Codeでworktreeを切り替え

  1. VS CodeのGit Worktree Managerパネルを開く
  2. 作成されたworktree(../project-issue-123)を選択
  3. 「Switch to Worktree」をクリック
  4. 新しいVS Codeウィンドウが開く

3. 開発を開始

新しいVS Codeウィンドウで開発フローを自動実行します:

💡 exec-issueコマンドの定義

.claude/commands/exec-issue.mdファイルを作成して以下をコピペしてください:

---
name: exec-issue
description: Issueを解析し、ブランチ作成から実装、テスト、PR作成まで自動化された開発ワークフローを実行
---

gh issue view $ARGUMENTS で GitHub の Issue の内容を確認し、タスクの遂行を行なってください。
タスクは以下の手順で進めてください。

1. Issue に記載されている内容を理解する
2. main にチェックアウトし、pull を行い、最新のリモートの状態を取得する
3. Issue の内容を元に、適切な命名でブランチを作成、チェックアウトする。ブランチ名は `任意の文字列#$ARGUMENTS` とすること
4. Issue の内容を解決するための計画を立てる
5. Issue の内容を実現するために必要なタスクを遂行する
6. テストと Lint を実行し、すべてのテストが通ることを確認する
   - 例: `npm test && npm run lint`
   - プロジェクトに応じてテスト・Lintコマンドを調整してください
7. コミットを適切な粒度で作成する
8. 以下のルールに従って PR を作成する

   - PR の description には以下のテンプレートを使用すること:

     ```
     ## issue番号
     Closes #$ARGUMENTS

     ## 変更箇所
     -

     ## 動作確認方法
     -

     ---

     ## このPRでやっていないこと(あれば)

     ```

   - PR は draft で作成すること

9. 作成した PR を自己レビューする

このコマンドで以下が自動実行されます:

  • Issue内容の解析と計画立案
  • 実装作業の実行
  • テスト・Lintの実行
  • コミット作成
  • Draft PRの作成
  • 自己レビューの実施

4. 複数Issueの並行作業

別のIssueに着手する場合:


claude worktree add 456



claude exec-issue 456

これにより、Issue #123とIssue #456でそれぞれ独立したClaude Codeセッションを同時実行でき、開発効率が大幅に向上します。

5. 作業状況の確認

各worktreeの変更状況や未コミット変更を一覧で確認できます。

6. 完了したworktreeの削除

Issue #123の作業が完了し、PRがマージされた場合:


claude worktree remove 123

メリット

1. Claude Codeセッションの並行実行

  • 複数のworktreeで同時にClaude Codeを動かせる
  • 一つのタスクの実行中に別のIssueで作業可能
  • Claude Codeの処理能力を最大限活用

2. 完全分離された並行開発

  • 各Issueが独立したworktreeで完全に分離される
  • ファイル変更の混在やコンフリクトが発生しない
  • 複数のIssueを同時進行で効率的に管理

3. コンテキストスイッチングの最小化

  • 各Issueが独立したVS Codeウィンドウで管理される
  • 作業コンテキストが完全に保持される
  • ブランチ切り替えによるファイル変更の混乱がない

4. 視覚的な管理

  • Git Worktree ManagerによるGUI操作
  • 複数のClaude Codeセッションの状態が一目で把握可能

注意事項

1. リソース使用量

  • 複数のworktreeは同じリポジトリのコピーを作成するため、ディスク容量を消費します
  • 大きなリポジトリでは特に注意が必要です

2. 依存関係の管理

  • Node.jsプロジェクトの場合、各worktreeでnpm installが必要となる
  • パッケージの更新は各worktreeで個別に実行

3. データベースの状態

  • データベースマイグレーションは全worktreeで共有されます
  • 開発用データベースの状態管理に注意が必要

まとめ

Git Worktree、Claude Code、Git Worktree Managerを組み合わせることで、Claude Code並行実行による効率的な開発環境を構築できます。

特に以下のように感じている場合において、このワークフローは大きな効果を発揮します。

  • Claude Codeで複数のタスクを並行実行したい場合
  • 複数のClaude Codeセッションを同時に動かしたい場合

ぜひお試しください!



Source link

Views: 0

RELATED ARTICLES

返事を書く

あなたのコメントを入力してください。
ここにあなたの名前を入力してください

- Advertisment -