设置和配置
获取和创建项目
基本快照
分支与合并
共享和更新项目
检查和比较
打补丁
调试
电子邮件
外部系统
服务器管理
指南
管理
底层命令
- 2.48.1 → 2.50.1 无更改
-
2.48.0
2025-01-10
- 2.46.1 → 2.47.3 无更改
-
2.46.0
2024-07-29
- 2.42.1 → 2.45.4 无更改
-
2.42.0
2023-08-21
- 2.40.1 → 2.41.3 无更改
-
2.40.0
2023-03-12
- 2.28.1 → 2.39.5 无更改
-
2.28.0
2020-07-27
- 2.25.3 → 2.27.1 无更改
-
2.25.2
2020-03-17
- 2.24.1 → 2.25.1 无更改
-
2.24.0
2019-11-04
- 2.22.1 → 2.23.4 无更改
-
2.22.0
2019-06-07
- 2.18.1 → 2.21.4 无变更
-
2.18.0
2018-06-21
- 2.9.5 → 2.17.6 无变化
-
2.8.6
2017-07-30
- 2.7.6 无更改
-
2.6.7
2017-05-05
- 2.1.4 → 2.5.6 无更改
-
2.0.5
2014-12-17
概要
git ls-remote [--branches] [--tags] [--refs] [--upload-pack=<exec>] [-q | --quiet] [--exit-code] [--get-url] [--sort=<key>] [--symref] [<repository> [<patterns>…]]
选项
- -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,同时考虑任何“url.<base>.insteadOf”配置设置(参见 git-config[1]),然后不与远程通信即退出。
- --symref
-
在显示符号引用时,除了符号引用指向的对象外,还显示它所指向的底层引用。目前,upload-pack 只显示符号引用 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
),它将与引用的“尾部”匹配,匹配可以从引用的开头开始(因此像refs/heads/foo
这样的全名会匹配),也可以从斜杠分隔符开始(因此bar
会匹配refs/heads/bar
但不匹配refs/heads/foobar
)。
输出
输出格式为
<oid> TAB <ref> LF
显示带注解的标签时,除非给定 --refs
,否则会显示两行:一行将标签本身的引用名称显示为 <ref>,另一行显示 <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://linuxkernel.org.cn/pub/scm/git/git.git master seen rc 5fe978a5381f1fbad26a80e682ddd2a401966740 refs/heads/master c781a84b5204fb294c9ccc79f8b3baceeb32c061 refs/heads/seen
-
仅列出匹配给定通配符模式的标签
$ git ls-remote --tags https://linuxkernel.org.cn/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^{}