我正在努力理解对象字段语法背后的魔力,特别是*前缀的存在。
例如(注意*authordate(
git for-each-ref --sort='-*authordate' --format='%(*authordate)'
按预期列出日期,而没有开始
git for-each-ref --sort='-*authordate' --format='%(authordate)'
此外,不显示任何日期(注意*对象类型(
git for-each-ref --sort='-*authordate' --format='%(*authordate) -- TYPE: %(*objecttype)'
返回TYPE: commit
,而如果没有*,结果将是TYPE: tag
有人能解释一下这个语法背后的魔力吗?我无法用谷歌搜索。
谢谢。
来自git help for-each-ref
:
如果
fieldname
以星号(*
(为前缀,并且ref指向标记对象,请使用标记对象所指对象中字段的值(而不是标记对象中的字段(。
也就是说,*
只是取消引用标记,仅此而已。