There\'s a lot of useful git references (what is the exact name for this?), e.g. HEAD, ORIG_HEAD, FETCH_HEAD, MERGE_HEAD,
This is what the official Linux Kernel Git documentation for Git revisions says:
HEADnames the commit on which you based the changes in the working tree.
FETCH_HEADrecords the branch which you fetched from a remote repository with your last git fetch invocation.
ORIG_HEADis created by commands that move yourHEADin a drastic way, to record the position of theHEADbefore their operation, so that you can easily change the tip of the branch back to the state before you ran them.
MERGE_HEADrecords the commit(s) which you are merging into your branch when you run git merge.
CHERRY_PICK_HEADrecords the commit which you are cherry-picking when you run git cherry-pick.
Also, for @{upstream}:
, e.g.@{upstream} master@{upstream},@{u}The suffix
@{upstream}to a ref (short form) refers to the branch the ref is set to build on top of. A missing ref defaults to the current branch.@{u}