Reflog 引用 refnamen

$ git show @{1}            # uses reflog for current branch
$ git show master@{1}      # uses reflog for branch 'master'
$ git show HEAD@{1}        # uses 'HEAD' reflog

一个 REF,通常是一个分支或 HEAD,随后用封闭在一对括号的序规范(例如 {1}{15})后缀 @ 指定 ref 的第 n 个先前值本地资源库。你可以使用 git reflog 命令检查最近的 reflog 条目,或者 git log 检查 --walk-reflogs / -g 选项。

$ git reflog
08bb350 HEAD@{0}: reset: moving to HEAD^
4ebf58d HEAD@{1}: commit: gitweb(1): Document query parameters
08bb350 HEAD@{2}: pull: Fast-forward
f34be46 HEAD@{3}: checkout: moving from af40944bda352190f05d22b7cb8fe88beb17f3a7 to master
af40944 HEAD@{4}: checkout: moving from master to v2.6.3

$ git reflog gitweb-docs
4ebf58d gitweb-docs@{0}: branch: Created from master

注意 :使用 reflogs 实际上取代了使用 ORIG_HEAD ref 的旧机制(大致相当于 HEAD@{1})。