git-name-rev(1)
===============

NAME
----
git-name-rev - Find symbolic names for given revs


SYNOPSIS
--------
[verse]
'git-name-rev' [--tags] [--refs=<pattern>]
	       ( --all | --stdin | <committish>... )

DESCRIPTION
-----------
Finds symbolic names suitable for human digestion for revisions given in any
format parsable by git-rev-parse.


OPTIONS
-------

--tags::
	Do not use branch names, but only tags to name the commits

--refs=<pattern>::
	Only use refs whose names match a given shell pattern.

--all::
	List all commits reachable from all refs

--stdin::
	Read from stdin, append "(<rev_name>)" to all sha1's of nameable
	commits, and pass to stdout

--name-only::
	Instead of printing both the SHA-1 and the name, print only
	the name.  If given with --tags the usual tag prefix of
	"tags/" is also omitted from the name, matching the output
	of linkgit:git-describe[1] more closely.  This option
	cannot be combined with --stdin.

EXAMPLE
-------

Given a commit, find out where it is relative to the local refs. Say somebody
wrote you about that fantastic commit 33db5f4d9027a10e477ccf054b2c1ab94f74c85a.
Of course, you look into the commit, but that only tells you what happened, but
not the context.

Enter git-name-rev:

------------
% git name-rev 33db5f4d9027a10e477ccf054b2c1ab94f74c85a
33db5f4d9027a10e477ccf054b2c1ab94f74c85a tags/v0.99^0~940
------------

Now you are wiser, because you know that it happened 940 revisions before v0.99.

Another nice thing you can do is:

------------
% git log | git name-rev --stdin
------------


Author
------
Written by Johannes Schindelin <Johannes.Schindelin@gmx.de>

Documentation
--------------
Documentation by Johannes Schindelin.

GIT
---
Part of the linkgit:git[7] suite
