IntelliJ IDEA 2026.1 Help

Git ブランチの管理

Git では、 ブランチは、たとえば機能の作業が必要な場合や、リリースのためにコードベースの特定の状態を固定する必要がある場合などに、メインの開発ラインから分岐できるようにする強力なメカニズムです。

IntelliJ IDEA では、すべてのブランチ操作は VCS ウィジェットで実行されます。 メインウィンドウのヘッダーで、現在チェックアウトされているブランチ名のウィジェットをクリックしてください。

Git ウィジェット

Git ツールウィンドウの ブランチペインで、ブランチを管理し、複数のブランチでバッチ操作を実行することもできます。

ブランチペイン

新規ブランチの作成

現在のブランチから新しいブランチを作成する

  1. VCS ウィジェットで 新規ブランチ を選択するか、 Git ペインの ブランチ で現在のブランチを右クリックして 「ブランチ名」からの新しいブランチ を選択します。

  2. 表示されたダイアログでブランチ名を指定し、そのブランチに切り替える場合は ブランチをチェックアウトする オプションが選択されていることを確認してください。

    新しいブランチの名前を入力し始めると、IntelliJ IDEA は既存のローカルブランチの名前に基づいて関連する接頭辞を提案します。

    新しいブランチは、現在のブランチ HEAD から始まります。

選択したブランチから新しいブランチを作成する

  1. VCS ウィジェットまたは Git ペインの ブランチ で、新しいブランチを作成したいローカルまたはリモートブランチを選択し、 選択からの新しいブランチ を選択します。

  2. 表示されたダイアログでブランチ名を指定し、そのブランチに切り替える場合は ブランチをチェックアウトする オプションが選択されていることを確認してください。

選択したコミットから新しいブランチを作成する

  1. ログビューで、新しいブランチの開始点として機能するコミットを選択し、コンテキストメニューから 新規ブランチ を選択します。

    ログタブで選択したコミットからの新しいブランチ
  2. 表示されたダイアログでブランチ名を指定し、そのブランチに切り替える場合は ブランチをチェックアウトする オプションが選択されていることを確認してください。

ブランチの名前を変更する

  1. VCS ウィジェットまたは Git ペインの ブランチ で、名前を変更するブランチを選択し、コンテキストメニューから 名前変更 を選択します。

  2. 開いたダイアログで、ブランチ名を必要な名前に変更します。

    この操作はローカルのブランチの名前のみを変更することに注意してください。 ローカルのブランチとリモートで追跡されているブランチの両方に同じ新しい名前を付けたい場合は、新しいリモート(ブランチ)を作成し、代わりに追跡を開始する必要があります。

  3. 変更されていない古い名前を持つ現在のリモートブランチの追跡を停止するには、同じ ブランチの名前変更 ダイアログで 上流ブランチの設定を解除 オプションを選択します。

    次回変更をプッシュすると、新しいリモートブランチが自動的に作成され、追跡されます。

    変更をプッシュした後、古い名前の古いリモートブランチを 削除できます。

ブランチをお気に入りとしてマーク

ブランチがたくさんある場合は、お気に入りのものだけを表示することをお勧めします。 メインのブランチは、デフォルトでお気に入りとしてマークされています。 お気に入りのブランチは、常に VCS ウィジェットの上部、または Git ツールウィンドウの ブランチ ペインに表示されます。

  • ブランチをお気に入りとしてマークするには、VCS ウィジェットでブランチ名の上にマウスを置き、左側に表示される星の輪郭をクリックしてください。

    お気に入りのブランチ

    または、お気に入りとしてマークするブランチを選択し、 Space を押します。

    Git ツールウィンドウの ブランチ ペインでブランチを選択して、ツールバーの the Star icon をクリックすることもできます。

グループブランチ

VCS ウィジェットでは、IntelliJ IDEA はブランチとタグを 4 つのノードに保持します。

  • 最近 のブランチノードには、最近チェックアウトされたブランチが最大 5 つ表示されます。

  • ローカル ブランチノードには、すべてのローカルブランチがリストされます。

  • リモート ブランチノードには、最新の フェッチ後に使用可能なすべてのリモートブランチが表示されます。

  • タグ ノードには、チェックアウト、作業ツリーとの比較、マージ、プッシュ、削除できるすべての利用可能なタグがリストされます。

また、IntelliJ IDEA は、ブランチを接頭辞ごとに自動的にグループ化し、展開可能なリストに保存します。

VCS ウィジェットで接頭辞別にグループ化されたブランチ

ブランチをグループ化するには、ブランチ名の接頭辞をスラッシュ / で区切る必要があります。 例: jd/2023.1

ブランチの接頭辞によるグループ化を解除したり、 最近 または タグ ノードを非表示にしたりする場合は、VCS ウィジェット右上の the Gear icon設定 をクリックし、 接頭辞でグループ化最近のブランチを表示 、または タグを表示する オプションの選択を外してください。

VCS ウィジェットの Prefix でグループ化オプション

ブランチをチェックする (git-checkout)

他の誰かが作成したブランチで作業したい場合は、それをチェックアウトして、そのブランチのローカルコピーを作成する必要があります。

リモートブランチの一覧を完全に表示するには、VCS ウィジェットで Fetch アイコン をクリックしてください。

Fetch アイコン

ブランチを新しいローカルブランチとしてチェックアウトする

  1. VCS ウィジェットまたは Git ペインの ブランチ で、ローカルにチェックアウトしたいブランチを リモートブランチ から選択するか、複数ルートプロジェクトで 同期ブランチコントロール 有効時は 共通リモートブランチ 、無効時は リポジトリ | リモートブランチ から選択してください。

  2. アクションのリストから チェックアウト を選択します。

新しいローカルブランチが作成され、チェックアウトされ、元のリモートブランチを追跡するように設定されます。

チェックアウトしたいリモートブランチと同じ名前のローカルブランチがすでにある場合があります。 状況に応じて、チェックアウトプロセスを完了する方法は次のとおりです。

  • コミットが失われず、ローカルブランチがすでにリモートを追跡している場合、IntelliJ IDEA はローカルブランチを リモートブランチに自動的にリセットしてからチェックアウトします。

  • ローカルブランチに、リセットのために失われる可能性のあるコミットが含まれている場合、IntelliJ IDEA は次のことを提案します。

    • ローカルコミットのドロップ: IntelliJ IDEA は、ローカルコミットをドロップし、ローカルブランチをリセットし、追跡を変更します。

    • リモートへのリベース: IntelliJ IDEA は、ローカルブランチを リモートブランチにリベースし、ローカルコミットを保持し、ローカルブランチをリセットし、追跡を変更します。

ブランチを切り替える

マルチタスクを実行する場合、関連のない変更をコミットするために、ブランチ間を移動する必要があることがよくあります。

  1. VCS ウィジェットまたは Git ペインの ブランチ で、 ローカルブランチ 配下の切り替えたいブランチを選択し、利用可能な操作一覧から チェックアウト を選んでください。

    マルチリポジトリプロジェクトの場合、ブランチはリポジトリごとに自動的にグループ化されます。 必要なブランチをチェックアウトするには、VCS ウィジェットで最初にリポジトリを選択してください。

  2. 次に起こることは、まだコミットしていないローカルの変更と、チェックアウトしようとしているブランチとの間に矛盾があるかどうかによって異なります。

    • 作業ツリーがクリーンである (つまり、コミットされていない変更がない) 場合、またはローカルの変更が指定されたブランチと競合しない場合、このブランチはチェックアウトされます (IntelliJ IDEA ウィンドウの右下隅に通知がポップアップ表示されます)。

    • ローカルの変更がチェックアウトによって上書きされる場合、IntelliJ IDEA は、選択されたブランチをチェックアウトできないファイルのリストを表示し、 強制チェックアウトスマートチェックアウトの選択を提案します。

      強制チェックアウト をクリックすると、コミットされていないローカルの変更が上書きされ、失われます。

      スマートチェックアウト をクリックすると、IntelliJ IDEA はコミットされていない変更を シェルブし、選択したブランチをチェックアウトして、変更をアンシェルブします。 アンシェルブ操作中に競合が発生した場合は、変更をマージするように求められます。 詳細については、「競合の解決 」を参照してください。

ブランチの比較

ブランチを現在のブランチと比較する

ブランチが現在のブランチからどのように分岐しているかを確認したい場合は、比較できます。

  1. VCS ウィジェットまたは Git ペインの ブランチ から、現在のブランチと比較したいブランチを選択し、 現在のブランチと比較 を選んでください。

    新しいタブが Git ツールウィンドウに追加され、選択したブランチに存在し、現在のブランチには存在しないすべてのコミットが一覧表示されます。

    ブランチを入れ替え リンクをクリックして、他のブランチと比較するベースと見なされるブランチを変更できます。

  2. 2 つのブランチで異なるすべてのファイルの一覧を表示するには、 Ctrl+A を押します。 変更されたファイル ペイン に相違があるすべてのファイルが一覧表示されます。

ブランチと作業ツリーを比較する

ブランチを現在のブランチと比較する以外に、現在のブランチのローカル状態と比較することができます。 これは、コミットされていない変更がローカルにある場合に役立ちます。

  • VCS ウィジェットまたは Git ペインの ブランチ から、ローカル作業ツリーと比較したいブランチを選択し、 作業ツリーとの差分を表示 を選んでください。

    開いた 変更 ツールウィンドウには、現在チェックアウトされているブランチと比較して、選択したブランチで異なるすべてのファイルのリストが表示されます。

    選択したブランチと現在の作業ツリーの差分を表示する
    • 選択したブランチに存在し、現在のブランチには存在しないファイルは、灰色でマークされます。

    • 現在のブランチに存在するが、選択したブランチにないファイルは、緑色でマークされます。

    • 選択したブランチと現在のブランチの違いを含むファイルは、青色でマークされています。

    ブランチを入れ替え リンクをクリックして、他のブランチと比較するベースと見なされるブランチを変更できます。

    • 特定のファイル内の違いを確認するには、ファイルを選択してツールバーの diff icon をクリックするか、 Ctrl+D を押します。

    • ファイルの内容全体を現在のブランチに適用するには、 the Get from Branch icon をクリックします。 詳細については、 個別のファイルを適用する を参照してください。

一方のブランチから他方のブランチに含まれていないすべてのコミットを一覧表示する

2 点範囲表記(英語)を使用すると、選択したブランチから、他のブランチに含まれていないすべてのコミットを一覧表示できます。

たとえば、誰かが機能ブランチに取り組んでいて、時々メインのブランチをこの機能ブランチにマージする場合に役立ちます。 このフィルターを使用すると、機能ブランチのコミットのみをリストし、メインのブランチのコミットはリストしません。

  1. Git ツールウィンドウ Alt+9 を開きます。

  2. コミットペイン で、 ブランチ | 選択 に移動します。

    コミットペインのブランチフィルターのコンテキストメニュー
  3. 比較するブランチを次のように指定します: branch1..branch2 は、 branch1 に含まれていない branch2 のすべてのコミットを一覧表示します。

  4. Ctrl+Enter を押す。

    この例では、リストにはブランチ feature1 に含まれ、ブランチ main に含まれないコミットが含まれています。

    フィルタリングされたコミットのリスト

このビデオを見て、変更をブランチと比較する方法をよりよく理解してください。

ブランチを削除

機能ブランチからの 変更を開発のメインラインに統合した後、不要になったブランチを削除できます。

  1. 今後の作業に使用するブランチを確認してください。

  2. VCS ウィジェットまたは Git ペインの ブランチ で、削除したいブランチを右クリックして 削除 を選択してください。

ブランチを削除すると、削除されたブランチを元に戻すことができる通知が右下隅に表示されます。

ブランチ通知を削除しました

ブランチに、上流のブランチまたは現在のブランチにまだマージされていないコミットが含まれている場合でも、すぐに削除されます(git branch --D または git branch --delete --force コマンドと同等)が、通知には、マージされていないコミットを表示できるリンクも含まれます。

削除されたブランチがリモートブランチを追跡していた場合、この通知にはリモートブランチを削除するリンクもあります。

同期ブランチ制御を構成する

マルチルートリポジトリがある場合は、単一のリポジトリであるかのように、すべてのルートですべてのブランチ操作 (チェックアウト、マージ、削除など) を同時に実行するように IntelliJ IDEA を構成できます。

  1. Ctrl+Alt+S を押して設定を開き、 バージョン管理 | Git を選択します。

  2. すべてのルートに対してブランチ操作を実行する オプションを選択します(このオプションは、プロジェクトに複数のルートがある場合にのみ使用できることに注意してください)。

少なくとも 1 つのリポジトリで操作が失敗した場合、IntelliJ IDEA は、成功したリポジトリでこの操作をロールバックすることを提案することで、ブランチの分岐を防ぎます。

2026 年 3 月 30 日