PyCharm 2026.1 Help

Git ブランチの管理

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

PyCharm では、すべてのブランチ操作は VCS ウィジェットで行われます。 これを呼び出すには、メインウィンドウのヘッダーで、現在チェックアウトされているブランチの名前が付いたウィジェットをクリックします。

Git ウィジェット

Git​​サポート ツールウィンドウの ブランチペインで、ブランチを管理したり、複数のブランチに対してバッチ操作を実行したりできます。

新規ブランチの作成

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

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

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

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

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

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

  1. VCS ウィジェットまたは Git​​サポート ツールウィンドウの ブランチ ペインで、新しいブランチを開始するローカルまたはリモートブランチを選択し、 選択からの新しいブランチ を選択します。

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

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

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

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

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

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

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

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

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

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

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

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

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

  • ブランチをお気に入りとしてマークするには、VCS ウィジェットでブランチの名前にカーソルを合わせ、左側に表示される星の枠をクリックします。

    お気に入りのブランチ

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

    Git​​サポート ツールウィンドウの ブランチ ペインでブランチを選択して、ツールバーの スターアイコン をクリックすることもできます。

グループブランチ

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

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

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

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

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

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

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

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

ブランチを接頭辞でグループ化するのを停止するか、 最近 または タグ ノードを非表示にするには、VCS ウィジェットの右上隅にある 歯車アイコン設定 をクリックし、 接頭辞でグループ化最近のブランチを表示タグを表示 オプションの選択を解除します。

VCS ウィジェットの「接頭辞でグループ化」オプション

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

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

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

Fetch アイコン

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

  1. VCSウィジェットまたは Git​​サポート ツールウィンドウの ブランチ ペインで、 リモートブランチ からローカルにチェックアウトしたいブランチを選択します。プロジェクトに複数のルートがあり 同期ブランチコントロールが有効な場合は 共通リモートブランチ から、無効な場合は リポジトリ | リモートブランチ から選択します。

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

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

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

  • コミットが失われることがなく、ローカルブランチがすでにリモートをトラックしている場合、PyCharm は自動的にローカルブランチをリモートブランチにリセットし、その後チェックアウトします。

  • ローカルブランチにリセットによって失われる可能性のあるコミットが含まれている場合、PyCharm は次の操作を提案します:

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

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

ブランチを切り替える

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

  1. VCS ウィジェットまたは Git​​サポート ツールウィンドウの ブランチ ペインで、 ローカルブランチ で切り替えたいブランチを選択し、使用可能な操作のリストから チェックアウト を選択します。

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

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

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

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

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

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

ブランチの比較

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

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

  1. VCS ウィジェットまたは Git​​サポート ツールウィンドウの ブランチ ペインから、現在のブランチと比較するブランチを選択し、 現在のブランチと比較 を選択します。

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

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

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

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

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

  • VCS ウィジェットまたは Git​​サポート ツールウィンドウの ブランチ ペインから、ローカル作業ツリーと比較するブランチを選択し、 作業ツリーとの差分を表示 を選択します。

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

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

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

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

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

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

    • ファイルの内容全体を現在のブランチに適用するには、 ブランチから取得アイコン をクリックします。 詳細については、 個別のファイルを適用する を参照してください。

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

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 コマンドと同等)が、通知には、マージされていないコミットを表示できるリンクも含まれます。

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

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

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

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

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

いずれかのリポジトリで操作が失敗した場合、PyCharm は成功したリポジトリでこの操作のロールバックを提案し、ブランチの分岐を防ぎます。

2026 年 6 月 1 日