我偶然发现了git ls-remote命令末尾的两个奇怪字符,我想知道这意味着什么?^{}在git中意味着什么?
0e4c39557ccb6789173c refs/tags/2011-11-04
966f8df553f18c486820 refs/tags/2011-11-04^{}
你碰巧知道这^ ^是什么意思?此外,为什么这个git标签似乎重复?
我偶然发现了git ls-remote命令末尾的两个奇怪字符,我想知道这意味着什么?^{}在git中意味着什么?
0e4c39557ccb6789173c refs/tags/2011-11-04
966f8df553f18c486820 refs/tags/2011-11-04^{}
你碰巧知道这^ ^是什么意思?此外,为什么这个git标签似乎重复?
的^{}
符号在gitrevisions
手册说明:
<rev>^{}, e.g. v0.99.8^{}
后缀^后跟一个空的一对括号表示对象可以是标签,并且取消引用标签递归直至非标签对象被找到。
对于您的情况,0e4c39557ccb6789173c
是标记对象,966f8df553f18c486820
是它最终解除引用的对象(提交)。
从git show-ref
手册:
-d
--dereference
解除引用标记插入对象ID为好。它们将以附加的“^ {}”显示。
请注意,git ls-remote
有一个新的过滤器与git 2.8(2016年3月)。
通过Thomas Gummerer (tgummerer
)参见commit 99c08d4,commit ba5f28b,commit 80b17e5,commit 40a8852,commit 54813bd(2016年1月18日)。
建议:pedro rijo (pedrorijo91
)。
(由Junio C Hamano -- gitster
--在commit bd6934a合并,2016年2月3日)
这意味着你只能说明变量与
git ls-remote --refs
不显示去皮标签或pseudorefs像输出HEAD。
在这个重复问题中可以找到更完整的解释:http://stackoverflow.com/a/15472310/83284 – pedromanoel