PaPoo
cover

同じリポジトリで複数案を並走させるなら、場所の衝突を先につぶす

並走作業でいちばん雑にやってしまうのが、「とりあえず同じ場所で別案を回す」ことだ。これ、すぐ詰まる。Claude Code は賢いが、同じリポジトリの同じファイル群を複数案でいじらせると、変更の混線と差分の肥大化が一気に起きる。複数案の比較をしたいなら、同時進行の整理は最初にやる。場所の衝突を先につぶしておくのが、あとで一番効く。

筆者は最初、同じ作業ツリーで A 案と B 案を行ったり来たりさせて、かなり手戻りした。片方で直した設定ファイルを、もう片方が前の前提のまま触ってしまう。Claude Code は目の前の指示に忠実だから、こちらが整理していないと、平気で「どっちの案の前提で動いているのか」が曖昧になる。結果、diff を見ても何を比較しているのか分からない。これはかなりだるい。

やることは単純だ。案ごとに作業場所を分ける。Git で別ブランチにするだけでは足りない場面がある。同じファイル名、同じ生成物、同じ一時ファイルがぶつかるからだ。Claude Code に複数案を投げるなら、物理的に場所を分けたほうが早い。

たとえば、同じリポジトリを保ったまま、案ごとに別ディレクトリを切る。

git clone git@github.com:example/project.git project-a
git clone git@github.com:example/project.git project-b

これだけで、A 案と B 案の差分を比べやすくなる。ディスクを食うのが嫌なら、Git の worktree を使う手もある。こちらは履歴を共有したまま、作業ツリーだけ増やせる。

git worktree add ../project-a feature/idea-a
git worktree add ../project-b feature/idea-b

Claude Code をそれぞれのディレクトリで走らせればいい。作業の文脈も、生成ファイルの置き場所も分かれる。これだけで「さっきの案の出力が、今の案に混ざる」事故がかなり減る。

実際に Claude Code へ渡す指示も、最初から案を分けて書くといい。たとえば同じ書面の草案を比べるなら、こんなふうに頼む。

このリポジトリでは案Aを編集してください。
対象は docs/proposal-a.md とその周辺だけにしてください。
案Aは読みやすさ重視で、短い見出しを増やしてください。
他の案のファイルには触らないでください。

別の作業ツリーでは、こう変える。

このリポジトリでは案Bを編集してください。
対象は docs/proposal-b.md とその周辺だけにしてください。
案Bは厳密さ重視で、注意事項を先に出してください。
他の案のファイルには触らないでください。

この「他の案のファイルには触らないでください」が地味に効く。Claude Code は広く見えると広く触りたがる。こちらが境界を先に渡しておくと、無駄な修正が減る。比較したいのに、比較対象まで一緒にいじってしまうのが一番まずい。

場所を分けるときは、生成物の逃げ場も考える。たとえば文書作成なら、draft/output/ を案ごとに分ける。不要なキャッシュや中間ファイルが同じ場所に残っていると、あとで「このPDFはどの案で作ったものだっけ」となる。ファイル整理やディスク削減で Claude Code を使う場合も同じで、削除候補の一覧と実行結果を別ファイルにしておくと事故が減る。

まずは重複ファイルの候補だけを一覧にしてください。
削除はまだしないでください。
候補一覧は results/duplicate-candidates-a.txt に書いてください。

この段階を飛ばして削除まで一気にやらせると、比較の余地がなくなる。並走作業で大事なのは、走らせることではなく、戻れる形で走らせることだ。

注意点もある。worktree や別クローンを使うと、同じ Git リポジトリでも「今どこを触っているか」を見失いやすい。ターミナルのカレントディレクトリを毎回確認しないと、別案のつもりで別の作業ツリーに書き込む。筆者はこれで、案Aのつもりで案Bのメモを更新してしまい、あとで差分が変に見えてしばらく原因が分からなかった。こういう時は、Claude Code に投げる前に、作業フォルダ名をそのままプロンプトに入れておくのが効く。

今いるのは project-a です。
ここでは案Aだけを進めてください。

さらに、比較したい観点も先に固定する。見た目なのか、文章の切れ味なのか、処理時間なのか。そこが曖昧だと、案を並走させても最後に決められない。Claude Code への依頼も、同じ指示を投げるより、評価軸を変えて分けたほうがいい。

案Aと案Bを比べるため、次の3点だけ表で整理してください。
1. 変更量
2. 読みやすさ
3. 既存ファイルへの影響範囲
余計な感想は不要です。

こうしておくと、単なる「どっちもそれっぽい」で終わらない。複数案の比較は、案を増やすことではなく、差が見える状態を作ることだ。

一歩進めるなら、最初から「案ごとに別作業ツリー」「案ごとに別出力先」「比較用の評価表」という3点をセットで回すといい。Claude Code はここでかなり扱いやすくなる。逆に、場所の衝突を放置したまま走らせると、コンテキストの節約どころか、確認作業で余計に時間を食う。並走作業は、同じ場所で頑張る話ではない。最初に分ける話だ。

関連 TIPS

同じ著者の記事