13-git ls-remote 显示远程存储库中可用的引用以及关联的提交 ID

知识前提:git 重要的三个工作区域:

  1. 工作区(Working Directory):写代码的目录。就是项目代码存放的目录。
  2. 暂存区(index/stage):工作区与版本库之间的缓冲地带。用 git add 把文件添加进去,实际上就是把文件修改添加到暂存区。
  3. 版本库(仓库区):git commit提交更改,实际上是把暂存区的所有内容全部提交到当前分支,查看记录 git log。

描述

显示远程存储库中可用的引用以及关联的提交 ID。

语法

1
2
3
git ls-remote [--heads] [--tags] [--refs] [--upload-pack=<exec>]
[-q | --quiet] [--exit-code] [--get-url]
[--symref] [<repository> [<refs>…]]

选项

  • -h --heads -t --tags: 仅限于 refs/headsref/tags。这些选项是not相互排斥的; 当同时给出时,将显示存储在 refs/headsrefs/tags 中的引用。

  • --refs:不要在输出中显示剥皮标签或像 HEAD 这样的伪码。

  • -q --quiet:不要将远程 URL 打印到 stderr。

  • --upload-pack=<exec>: 指定git-upload-pack远程主机上的完整路径。这允许列出来自通过 SSH 访问的存储库的引用,并且 SSH 守护程序不使用用户配置的 PATH。

  • --exit-code:当在远程存储库中找不到匹配的参考时退出状态“2”。通常情况下,该命令以状态“0”退出,以指示它与远程存储库成功交谈,无论它是否找到任何匹配的参考。

  • --get-url: 考虑到任何“url。 .insteadOf”配置设置(请参阅 git-config [1]),扩展给定远程存储库的 URL,并退出而不与远程进行通话。

  • --symref:除了它指向的对象之外,显示它在显示符号引用时指向的基础引用。目前,upload-pack 仅显示 symref HEAD,因此它将是 ls-remote 显示的唯一一个。

  • <repository>: 用于查询的“远程”存储库。此参数可以是 URL 或远程名称(请参阅 git-fetch [1]的 GIT URLS 和 REMOTES 部分)。

  • <refs>…: 如果未指定,则会显示使用–heads 和 –tags 进行筛选后的所有引用。当指定 …时,只显示符合给定模式的引用。

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$ git ls-remote --tags ./.
d6602ec5194c87b0fc87103ca4d67251c76f233a refs/tags/v0.99
f25a265a342aed6041ab0cc484224d9ca54b6f41 refs/tags/v0.99.1
7ceca275d047c90c0c7d5afb13ab97efdf51bd6e refs/tags/v0.99.3
c5db5456ae3b0873fc659c19fafdde22313cc441 refs/tags/v0.99.2
0918385dbd9656cab0d1d81ba7453d49bbc16250 refs/tags/junio-gpg-pub
$ git ls-remote http://www.kernel.org/pub/scm/git/git.git master pu rc
5fe978a5381f1fbad26a80e682ddd2a401966740 refs/heads/master
c781a84b5204fb294c9ccc79f8b3baceeb32c061 refs/heads/pu
$ git remote add korg http://www.kernel.org/pub/scm/git/git.git
$ git ls-remote --tags korg v\*
d6602ec5194c87b0fc87103ca4d67251c76f233a refs/tags/v0.99
f25a265a342aed6041ab0cc484224d9ca54b6f41 refs/tags/v0.99.1
c5db5456ae3b0873fc659c19fafdde22313cc441 refs/tags/v0.99.2
7ceca275d047c90c0c7d5afb13ab97efdf51bd6e refs/tags/v0.99.3

13-git ls-remote 显示远程存储库中可用的引用以及关联的提交 ID
https://flepeng.github.io/044-Git-21-命令-13-git-ls-remote-显示远程存储库中可用的引用以及关联的提交-ID/
作者
Lepeng
发布于
2021年3月8日
许可协议