Extended SHA-1 revisions
<sha1>
e.g. dae86e1950b1277e545cee180551750029cfe735, dae86e
The full SHA-1 object name (40-byte hexadecimal string), or a leading substring that is unique within the repository. E.g. dae86e1950b1277e545cee180551750029cfe735 and dae86e both name the same commit object if there is no other object in your repository whose object name starts with dae86e.
<describeOutput>
e.g. v1.7.4.2-679-g3bee7fb
Output from git describe
; i.e. a closest tag, optionally followed by a dash and
a number of commits, followed by a dash, a g, and an abbreviated object name.
<refname>
e.g. master, heads/master, refs/heads/master
A symbolic ref name. E.g. master typically means the commit object referenced by refs/heads/master. If you happen to have both heads/master and tags/master, you can explicitly say heads/master to tell Git which one you mean. When ambiguous, a <refname> is disambiguated by taking the first match in the following rules:
If $GIT_DIR/<refname> exists, that is what you mean (this is usually useful only for
HEAD
,FETCH_HEAD
,ORIG_HEAD
,MERGE_HEAD
andCHERRY_PICK_HEAD
);otherwise, refs/<refname> if it exists;
otherwise, refs/tags/<refname> if it exists;
otherwise, refs/heads/<refname> if it exists;
otherwise, refs/remotes/<refname> if it exists;
otherwise, refs/remotes/<refname>/HEAD if it exists.
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 lastgit 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 rungit merge
.CHERRY_PICK_HEAD
records the commit which you are cherry-picking when you rungit cherry-pick
.Note that any of the refs/* cases above may come either from the $GIT_DIR/refs directory or from the $GIT_DIR/packed-refs file. While the ref name encoding is unspecified, UTF-8 is preferred as some output processing may assume ref names in UTF-8.