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:
HEAD
names the commit on which you based the changes in the working tree.
FETCH_HEAD
records the branch which you fetched from a remote repository with your last git fetch invocation.
ORIG_HEAD
is created by commands that move yourHEAD
in a drastic way, to record the position of theHEAD
before their operation, so that you can easily change the tip of the branch back to the state before you ran them.
MERGE_HEAD
records the commit(s) which you are merging into your branch when you run git merge.
CHERRY_PICK_HEAD
records 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}