日本語 ▾ トピック ▾ 最新バージョン ▾ git-ls-remote は 2.48.0 で最終更新されました

名前

git-ls-remote - リモートリポジトリの参照をリストする

概要

git ls-remote [--branches] [--tags] [--refs] [--upload-pack=<exec>]
	      [-q | --quiet] [--exit-code] [--get-url] [--sort=<key>]
	      [--symref] [<repository> [<patterns>…​]]

説明

リモートリポジトリで利用可能な参照と、それに関連付けられたコミットIDを表示します。

オプション

-b
--branches
-t
--tags

それぞれローカルブランチとローカルタグのみに限定します。これらのオプションは相互排他的ではありません。両方指定すると、refs/heads と refs/tags に格納されている参照が表示されます。なお、--heads-h--branches-b の非推奨の同義語であり、将来削除される可能性があります。また、コマンドラインで何も指定せずに git ls-remote -h を使用すると、他の git サブコマンドと同様にヘルプが表示されることに注意してください。

--refs

出力に剥がされたタグや、HEAD のような擬似参照を表示しません。

-q
--quiet

リモート URL を標準エラーに出力しません。

--upload-pack=<exec>

リモートホスト上の git-upload-pack のフルパスを指定します。これにより、SSH 経由でアクセスされるリポジトリで、SSH デーモンがユーザーによって設定された PATH を使用しない場合でも、参照をリストできます。

--exit-code

リモートリポジトリに一致する参照が見つからない場合、ステータス "2" で終了します。通常、コマンドはステータス "0" で終了し、一致する参照が見つかったかどうかに関わらず、リモートリポジトリとの通信に成功したことを示します。

--get-url

「url.<base>.insteadOf」設定(git-config[1]を参照)を考慮して、指定されたリモートリポジトリのURLを展開し、リモートとの通信を行わずに終了します。

--symref

シンボリック参照を表示する際、それが指すオブジェクトに加えて、それが指す基になる参照も表示します。現在、upload-pack は symref HEAD のみを表示するため、ls-remote で表示されるのはこれだけです。

--sort=<key>

指定されたキーに基づいてソートします。値の降順でソートするには - をプレフィックスとして付けます。"version:refname" または "v:refname" (タグ名はバージョンとして扱われます) をサポートします。"version:refname" ソート順は、"versionsort.suffix" 設定変数によっても影響されることがあります。git-for-each-ref[1] でより多くのソートオプションを参照してください。ただし、オブジェクト自体へのアクセスを必要とする committerdate のようなキーは、オブジェクトがリモートからまだフェッチされていない参照では機能せず、missing object エラーを発生させることに注意してください。

-o <option>
--server-option=<option>

プロトコルバージョン2を使用して通信する際に、指定された文字列をサーバーに送信します。指定された文字列にはNULまたはLF文字を含めてはなりません。--server-option=<option> が複数指定された場合、それらはコマンドラインでリストされた順序ですべて相手側に送信されます。コマンドラインから --server-option=<option> が指定されていない場合、代わりに設定変数 remote.<name>.serverOption の値が使用されます。

<repository>

問い合わせる「リモート」リポジトリ。このパラメータは、URL またはリモートの名前(git-fetch[1] の GIT URLS および REMOTES セクションを参照)のいずれかです。

<patterns>…​

指定しない場合、--heads および --tags でフィルタリングされた後、すべての参照が表示されます。…​ が指定された場合、指定されたパターンの1つ以上に一致する参照のみが表示されます。各パターンはグロブ(gitglossary[7]glob を参照)として解釈され、参照の「末尾」に対して、参照の先頭から(refs/heads/foo のような完全な名前が一致するように)またはスラッシュ区切り文字から(barrefs/heads/bar に一致しますが refs/heads/foobar には一致しないように)照合されます。

出力

出力形式は次のとおりです

<oid> TAB <ref> LF

注釈付きタグを表示する場合、--refs が指定されていない限り、2行が表示されます。1つはタグ自体の refname を <ref> とし、もう1つは <ref> に続けて ^{} とします。後者の行の <oid> は、タグが指すオブジェクトの名前を示します。

  • すべての参照 (シンボリックおよび擬似参照を含む) をリストし、タグを剥がす

    $ git ls-remote
    27d43aaaf50ef0ae014b88bba294f93658016a2e	HEAD
    950264636c68591989456e3ba0a5442f93152c1a	refs/heads/main
    d9ab777d41f92a8c1684c91cfb02053d7dd1046b	refs/heads/next
    d4ca2e3147b409459955613c152220f4db848ee1	refs/tags/v2.40.0
    73876f4861cd3d187a4682290ab75c9dccadbc56	refs/tags/v2.40.0^{}
  • 指定されたパターンに一致するすべての参照をリストする

    $ git ls-remote http://www.kernel.org/pub/scm/git/git.git master seen rc
    5fe978a5381f1fbad26a80e682ddd2a401966740	refs/heads/master
    c781a84b5204fb294c9ccc79f8b3baceeb32c061	refs/heads/seen
  • 指定されたワイルドカードパターンに一致するタグのみをリストする

    $ git ls-remote --tags http://www.kernel.org/pub/scm/git/git.git v\*
    485a869c64a68cc5795dd99689797c5900f4716d	refs/tags/v2.39.2
    cbf04937d5b9fcf0a76c28f69e6294e9e3ecd7e6	refs/tags/v2.39.2^{}
    d4ca2e3147b409459955613c152220f4db848ee1	refs/tags/v2.40.0
    73876f4861cd3d187a4682290ab75c9dccadbc56	refs/tags/v2.40.0^{}

関連項目

GIT

git[1]スイートの一部

scroll-to-top