プログラミング
 Computer >> コンピューター >  >> プログラミング >> プログラミング

Gitでリモートブランチを一覧表示する方法|git branch -rとgit remote showの使い方

Gitリポジトリに関連付けられたリモートブランチの一覧を表示するには、git branch -rgit branch -a、またはgit remote showコマンドを使用します。ローカルブランチのみを確認したい場合は、git branchコマンドを使いましょう。

git branchコマンドを実行すると、ローカルリポジトリに保存されているすべてのブランチの一覧が表示されます。リモートのブランチを確認するには、このコマンドに-rオプションを付けて実行します。

本記事では、git branch -rコマンドでリモートブランチを表示する方法と、git remote showコマンドでリモートリポジトリのブランチ情報を詳しく確認する方法について解説します。

Gitでリモートブランチを一覧表示する3つの方法

Gitリポジトリのリモートブランチを一覧表示するには、主に以下の3つのコマンドがあります。

  • git branch -a:ローカルブランチとリモートブランチの両方を表示
  • git branch -r:リモートブランチのみを表示
  • git remote show:リモートブランチと関連するメタデータを表示

最もよく使われるのはgit branch -agit branch -rです。これらのコマンドはブランチ名だけをシンプルに一覧表示してくれるためです。git remote showは各ブランチに関する詳細な情報も出力しますが、必ずしも必要ではない場合もあります。

git branchコマンドですべてのリモートブランチを確認する

ここでは、例として「ck-git」というGitリポジトリを扱います。作成しようとしているブランチ「dev2.2-fix」がリポジトリにすでに存在するかどうかを確認したい状況を想定しましょう。

git branch -rオプションの使い方

まず、git branchコマンドを実行してローカルのブランチを確認してみます。

git branch

このコマンドは、ローカルリポジトリ内のすべてのブランチを返します。

* master
  dev

アスタリスク(*)が付いているブランチが、現在チェックアウトしているブランチです。ここから、作成したい「dev2.2-fix」ブランチがローカルには存在しないことがわかります。

ブランチを作成する前に、そのブランチがリモートに存在するかどうかを確認しておきましょう。これには、git branchコマンドに-rオプションを追加します。

git branch -r

このコマンドは、リモートリポジトリ上のブランチを取得して表示します。

  origin/HEAD -> origin/master
  origin/dev2.2-fix
  origin/master

リモートリポジトリにはすでに「dev2.2-fix」というブランチが存在することがわかりました。つまり、このブランチはリモートには存在するものの、ローカルには存在しない状態です。

この場合、新しいブランチを作成する必要はありません。既存のブランチをローカルマシンにフェッチ(取得)すれば、すぐにコードの作業を始められます。

リモートリポジトリから既存のブランチを取得するには、git fetchコマンドを使用します。

git fetch origin dev2.2-fix

これにより、「origin」リポジトリから「dev2.2-fix」ブランチを取得できます。「origin」とは、コードをプッシュする先となるメインのリモートリポジトリの名前です。コマンドを実行すると、次のような出力が表示されます。

From https://github.com/career-karma-tutorials/ck-git
 * branch            dev2.2-fix     -> FETCH_HEAD

git branch -aオプションの使い方

git branchコマンドに-aオプションを付けると、リポジトリに関連付けられたすべてのローカルブランチとリモートブランチが表示されます。

次のコマンドを見てみましょう。

git branch -a

このコマンドの出力結果は次のとおりです。

* master
  remotes/origin/activity-feed
  remotes/origin/master

git branch -rでは表示されなかったブランチが含まれていることに注目してください。これは、-rオプションがリモートブランチのみを返すのに対し、-aオプションはリモートトラッキングブランチとローカルブランチの両方を返すためです。

リモートブランチには「remotes/」というラベルが付いて表示されます。

git remote showコマンドでリモートブランチの詳細を確認する

git remote showコマンドは、リモートリポジトリに関連付けられたブランチに関する詳細な情報を表示します。このコマンドは引数を1つ受け取ります。それは、ブランチを確認したいリモートの名前です。

リモートに保存されているブランチの概要だけを知りたいのであれば、git branch -rコマンドで十分です。より詳細な情報が必要な場合は、git remote showコマンドの方が便利でしょう。このコマンドからは以下の情報が得られます。

  • すべてのリモートブランチ
  • git pullコマンド用に設定されたローカルブランチ
  • git pushコマンド用に設定されたブランチ

それでは、プロジェクトのメインリモートである「origin」に対してgit remote showコマンドを実行してみましょう。リモートのメインブランチであるmasterブランチや、その他のブランチの情報が表示されるはずです。

多くの場合、このコマンドは必要以上の情報を返します。しかし、詳細な情報が必要になったときのために覚えておくと役立ちます。

git remote showコマンドを使って、リモートリポジトリ上のすべてのブランチの一覧を取得してみます。

git remote show origin

このコマンドは、「origin」(リポジトリに紐づくメインのリモート)に関連付けられたすべてのリモート情報を表示します。実際の出力を見てみましょう。

* remote origin
  Fetch URL: https://github.com/career-karma-tutorials/ck-git
  Push  URL: https://github.com/career-karma-tutorials/ck-git
  HEAD branch: master
  Remote branches:
    dev2.2-fix  tracked
    master      tracked
  Local branch configured for 'git pull':
    master merges with remote master
  Local ref configured for 'git push':
    master pushes to master (local out of date)

この出力から、リモートリポジトリには追跡中のブランチが2つあることがわかります。それぞれ「master」と「dev2.2-fix」です。

「dev2.2-fix」ブランチにはpullやpushの設定がまだ行われていません。これは、まだそのブランチからコードを取得したり、プッシュしたりしたことがないためです。

まとめ

git branch -rコマンドを使えば、特定のリモート上のすべてのブランチを一覧表示できます。リポジトリに関連付けられたリモートについてさらに詳しい情報が必要な場合は、git remote showコマンドを活用しましょう。

これで、Gitでリモートのブランチを一覧表示するためのコマンドを使えるようになりました。Gitの操作についてさらに学びたい方は、Gitの学習ガイドも参考にしてください。

  1. Gitリセットでコミットを取り消す!基本から実践テクニックまで徹底解説

    個人でもチームでも、プロジェクトを進めていると「コミットを取り消したい」という場面に遭遇することがあります。そんなときに頼りになるのが git reset コマンドです。まさに命綱とも言えるツールの一つでしょう。 Gitの追跡メカニズム git reset を理解する前に、まずGitの内部構造について押さえておきましょう。Gitは、ノードとポインタで構成されるツリー構造によってファイルを管理・追跡しています。 ローカルのGitリポジトリには、基本的に次の3つの「ツリー」が存在します。 作業ディレクトリ(Working Directory):ワーキングツリーとも呼ばれ、ローカルディレク

  2. ローカルおよびリモートのGitブランチを削除する方法【コマンド解説】

    多くの開発者にとって、Gitの活用はもはや必須スキルといえます。その最大の理由は、プロジェクト内のあらゆる変更を意識せずに記録できる点にあります。ただし、作業を進めるうちに「不要になったブランチを整理したい」と考える場面は自然に訪れます。ローカルおよびリモートのGitブランチを削除したいという状況です。気持ちは理解できますが、具体的な手順となると戸惑う方も少なくありません。 本記事では、ローカルとリモートのGitブランチを削除する方法を詳しく解説します。その前に、まずGitの仕組みについて簡単におさらいしておきましょう。 Gitの基礎知識:まずは全体像をつかもう 記事の本題に入る前に、Git