【PR】この記事には楽天アフィリエイトとAmazonアソシエイトの広告が含まれます。書籍の紹介は出版社の目次・対象読者を基にしており、実読レビューではありません。 Amazonのアソシエイトとして、PROBEFOLIOは適格販売により収入を得ています。

一つの修正をしている途中で、別の不具合も直したい。でも同じフォルダーを触ると、どちらの変更なのか分からなくなる。worktreeは、そんなときにGitのプロジェクトへ「もう一つの作業机」を用意する仕組みです。ファイルを別々の机で編集できる一方、完成した変更は同じ履歴へ戻せます。コピーしたフォルダーを後から手作業で比べるより、作業の区切りを残しやすくなります。

この記事の目次
01

ブランチだけ切り替える場合と何が違う?

ブランチは変更履歴の進む道、worktreeはその道のファイルを実際に開く場所です。通常の一つの作業フォルダーでもブランチは切り替えられますが、別の作業を同時に開いておくには、作業フォルダーも分かれている方が扱いやすくなります。

たとえばAでは記事の見出しを直し、Bでは検索機能の不具合を直すとします。worktreeを二つ使えばAの編集中にBが同じファイルを書き換える衝突を避けられます。ただし、最後に両方を取り込む段階で同じ行を変更していれば、どちらを残すか判断が必要です。

共通のGit履歴から二つの作業フォルダーへ線が分かれる図。片方で既存ページを確認し、もう片方でヘッダーを修正する例。外部DBは自動隔離されない。
Git worktreeの役割を示す説明図です。Codexの操作画面ではありません。 枝分かれしているのは、ファイルを編集する場所です。一方で外部のデータベースなどへ同じ設定で接続すれば、操作先は同じになります。安全に試すには、フォルダーだけでなく接続先も分けて確認します。画像を大きく見る ↗(新しいタブで開きます)
02

新しい作業を始める前に、現在地を確認する

Codexが開いている場所がGitリポジトリか、未保存の編集や未コミットの変更があるかを確認します。コミットは、その時点の変更をGitの履歴として記録する操作です。まだコミットが一つもない空のリポジトリでは、まず作業の出発点を用意します。

Codexが管理するworktreeでは、開始時に選んだGitの状態や、アプリ側で選ぶ開始方法によって引き継ぐ内容が変わります。「いつも未コミットの編集も全部入る」と思い込まず、新しい作業で対象ファイルを開いて確認してください。

読み取りの確認には、git status --short、git branch --show-current、git worktree listが使えます。これらは変更を取り消すコマンドではありません。ブランチ名が空でも、コミットを直接見ている状態の場合があります。慌てて削除せず、Codexの作業表示と照らし合わせます。

03

二つに分けるのは、依頼の範囲も同じ

作業机が別でも、両方へ「サイト全体をよくして」と頼むと変更が重なりやすくなります。Aには記事ページ、Bには検索のように対象を分け、共通の設定ファイルを変える必要が出たら先に知らせてもらいます。

下の依頼例は、複数のAIを自動起動するための指示ではありません。自分で開始するそれぞれの作業に、担当範囲を伝えるための例です。

04

フォルダーが別でも共有されるものに注意する

worktreeが主に分けるのは、Gitで扱う作業ファイルです。どちらの開発サーバーも同じポートを使えば起動がぶつかり、同じリモートDBへ接続すればデータを一緒に変更します。この二つは、ファイルを分けただけでは解決しません。

環境変数を入れるファイルや、インストール済みの依存関係が新しい場所にない場合もあります。秘密を含むファイルを何でもコピーするのではなく、必要な設定名と接続先を確認します。開発用のDBを使い、どの作業がどこへ書き込むかを決めてから起動します。

独立しているか確かめるもの
確認するもの見落とすと起きること
作業ディレクトリ別の作業のファイルを編集する
ブランチ・開始コミット想定より古いコードで修正を始める
開発サーバーのポート別の画面を見て動作確認してしまう
DB・保存先テストのつもりで共通データを書き換える
依存関係と環境変数本流では動くのに新しい作業だけ起動しない
05

完成したら、一つずつ取り込んで再確認する

まずAの差分を読み、Aの変更だけを取り込みます。その状態でテストしてから、Bを取り込みます。両方単独では動いても、一緒になると画面の余白が崩れるなどの不具合が出るため、最後に組み合わせた状態で確認します。

「競合」は、Gitが自動でどちらの変更を残すか決められない状態です。競合した箇所でAかBの全文を機械的に採用せず、両方の依頼で残すべき条件を見ます。迷ったら統合を止め、作業内容を並べて確認する方が戻しやすくなります。

取り込み前の試作を片づけるときも、必要な変更が残っていないか確認してからにします。worktreeのフォルダーを直接強制削除する操作を、いつもの片づけとして使うのは避けます。Codexの管理画面やGitの正式な管理操作で扱います。

06

並行作業を増やす前に、一回の流れを覚える

最初は二つの小さな修正で十分です。「作業先を確認→別々に変更→差分を見る→一つずつ取り込む」を一度通せば、どこで作業が混ざるか分かってきます。数を増やすほど速くなるとは限りません。

Codexでの開発全体を順番に学びたいなら、作業ルールや変更の確認も扱う入門書を候補にできます。worktreeのボタンだけを探している方は、まず上の公式手順で十分です。AGENTS.mdの書き方と合わせると、どの机でも守る共通ルールを用意できます。

QUICK ANSWERS

よくある疑問を、ここで。

使い始める前に、気になるところから。

worktreeはフォルダーのコピーですか?

ファイルを別の場所で開ける点は似ていますが、Gitの履歴や管理情報を共有している点が違います。単純コピーしたフォルダーと同じ感覚で移動・削除せず、worktreeとして管理してください。

この記事の内容をもとにした、編集部からの提案です。
同じファイルを二つの作業で直しても大丈夫?

別フォルダーなので編集中の上書きは避けられます。ただし取り込むときに同じ行の修正が衝突することがあります。変更の目的を分け、統合後も確認します。

この記事の内容をもとにした、編集部からの提案です。
使えばAIの利用料金は安くなりますか?

worktreeはファイルを分ける機能です。処理量を減らす機能ではありません。複数の作業を同時に走らせれば、それぞれの利用量が増える可能性があります。

この記事の内容をもとにした、編集部からの提案です。

商品情報の提供:Supported by Rakuten Developers

SOURCES & EDITORIAL NOTE

出典と、この記事について

公式資料や、記事で参照した発表・報道をまとめています。仕様や料金は、利用する前に最新の案内をご確認ください。

製品の実測レビューや、導入効果の保証を示すものではありません。編集方針を読む