Home Explore Blog CI



git

2nd chunk of `Documentation/git-describe.adoc`
36f26b46305cf5091299c26c0e3d763254791afc3e7450690000000100000a6a
 --candidates=0.

--debug::
	Verbosely display information about the searching strategy
	being employed to standard error.  The tag name will still
	be printed to standard out.

--long::
	Always output the long format (the tag, the number of commits
	and the abbreviated commit name) even when it matches a tag.
	This is useful when you want to see parts of the commit object name
	in "describe" output, even when the commit in question happens to be
	a tagged version.  Instead of just emitting the tag name, it will
	describe such a commit as v1.2-0-gdeadbee (0th commit since tag v1.2
	that points at object deadbee....).

--match <pattern>::
	Only consider tags matching the given `glob(7)` pattern,
	excluding the "refs/tags/" prefix. If used with `--all`, it also
	considers local branches and remote-tracking references matching the
	pattern, excluding respectively "refs/heads/" and "refs/remotes/"
	prefix; references of other types are never considered. If given
	multiple times, a list of patterns will be accumulated, and tags
	matching any of the patterns will be considered.  Use `--no-match` to
	clear and reset the list of patterns.

--exclude <pattern>::
	Do not consider tags matching the given `glob(7)` pattern, excluding
	the "refs/tags/" prefix. If used with `--all`, it also does not consider
	local branches and remote-tracking references matching the pattern,
	excluding respectively "refs/heads/" and "refs/remotes/" prefix;
	references of other types are never considered. If given multiple times,
	a list of patterns will be accumulated and tags matching any of the
	patterns will be excluded. When combined with --match a tag will be
	considered when it matches at least one --match pattern and does not
	match any of the --exclude patterns. Use `--no-exclude` to clear and
	reset the list of patterns.

--always::
	Show uniquely abbreviated commit object as fallback.

--first-parent::
	Follow only the first parent commit upon seeing a merge commit.
	This is useful when you wish to not match tags on branches merged
	in the history of the target commit.

EXAMPLES
--------

With something like git.git current tree, I get:

	[torvalds@g5 git]$ git describe parent
	v1.0.4-14-g2414721

i.e. the current head of my "parent" branch is based on v1.0.4,
but since it has a few commits on top of that,
describe has added the number of additional commits ("14") and
an abbreviated object name for the commit itself ("2414721")
at the end.

The number of additional commits is the number
of commits which would be displayed by "git log v1.0.4..parent".
The hash suffix is "-g" + an unambiguous abbreviation for the tip commit
of parent (which

Title: Git Describe Options and Examples
Summary
The git-describe command provides various options to customize its output, including filtering tags, debugging, and formatting, and can be used to generate a human-readable name for a Git object based on the most recent tag reachable from a commit, as demonstrated by examples.