什么是不是标签或分支头的引用?

时间:2014-10-17 17:45:13

标签: git

当我git ls-remote时,我会得到类似的内容:

679ba3cdb7201763c0a243e0169a7f8fd210b5b1        HEAD
045b31588f934722cd9df1570987ed84b6e9b070        refs/heads/feature/proto-version-update
7b278f052ab47c49a6c1ac9bd12d05b72a4af584        refs/heads/iml
679ba3cdb7201763c0a243e0169a7f8fd210b5b1        refs/heads/master
52dc74d4b4775d7e24534b87908fb5efcd6d3118        refs/pull-requests/14/from
453f675541cd12e01cb05a7f8a63fadfb26e62fa        refs/pull-requests/14/merge

我知道像refs/pull-requests/14/merge这样的最后两个条目 - 它们是由我们的中央仓库(Stash)创建的,用于管理拉取请求。 (我无意修改它们,我只是很好奇,想要深入了解,主要是为了更好地了解git)

但我不明白他们是什么。它们似乎不是分支或标记(将--heads --tags添加到命令中隐藏它们),并且提取不会将它们拉出来。如何在本地获取它们以便我可以进一步检查它们?

他们是什么?我该如何检查它们?

Git referencesgit ls-remote文档仅提及标题,标签和遥控器。

1 个答案:

答案 0 :(得分:0)

我找到了部分问题的答案:

documentation中所述,git fetch仅提取remote.<repository>.fetch config参数中指定的引用。我没有看到他们,因为我有:

$ git config --get remote.origin.fetch
+refs/heads/*:refs/remotes/origin/*

明确地运行git fetch origin +:refs/pull-requests/14/merge会将其拉到本地。