簡體中文 ▾ 主題 ▾ 最新版本 ▾ 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 列印到 stderr。

--upload-pack=<exec>

指定遠端主機上 git-upload-pack 的完整路徑。這允許從透過 SSH 訪問的倉庫列出引用,並且 SSH 守護程序不使用使用者配置的 PATH。

--exit-code

當在遠端倉庫中找不到匹配的引用時,退出狀態為“2”。通常,命令退出狀態為“0”,表示它已成功與遠端倉庫通訊,無論是否找到匹配的引用。

--get-url

展開給定遠端倉庫的 URL,同時考慮任何“url.<base>.insteadOf”配置設定(參見 git-config[1]),然後退出,不與遠端通訊。

--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 進行過濾後)。當指定 <patterns>…​ 時,僅顯示與一個或多個給定模式匹配的引用。每個模式都被解釋為 glob(參見 gitglossary[7] 中的 glob),並與 ref 的“尾部”進行匹配,從 ref 的開頭開始(因此,像 refs/heads/foo 這樣的完整名稱會匹配),或者從斜槓分隔符開始(因此,bar 會匹配 refs/heads/bar 但不匹配 refs/heads/foobar)。

輸出

輸出格式為

<oid> TAB <ref> LF

顯示帶註釋的標籤時,除非給出 --refs,否則會顯示兩條這樣的行:一條使用標籤本身作為 <ref> 的 refname,另一條使用 <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 https://kernel.linux.club.tw/pub/scm/git/git.git master seen rc
    5fe978a5381f1fbad26a80e682ddd2a401966740	refs/heads/master
    c781a84b5204fb294c9ccc79f8b3baceeb32c061	refs/heads/seen
  • 僅列出與給定萬用字元模式匹配的標籤

    $ git ls-remote --tags https://kernel.linux.club.tw/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] 套件的一部分