blob: ca28fb8e2a07bebde63c896939211fbec69e93e0 [file] [log] [blame]
Johannes Schindelinbd321bc2005-10-26 15:10:20 +02001git-name-rev(1)
2===============
3
4NAME
5----
Fredrik Kuivinen7bd7f282006-03-09 17:24:50 +01006git-name-rev - Find symbolic names for given revs
Johannes Schindelinbd321bc2005-10-26 15:10:20 +02007
8
9SYNOPSIS
10--------
Matthias Kestenholze448ff82007-05-18 15:39:33 +020011[verse]
Jonathan Niederb1889c32008-06-30 01:09:04 -050012'git name-rev' [--tags] [--refs=<pattern>]
Richard Hansena8a54062013-09-04 15:04:31 -040013 ( --all | --stdin | <commit-ish>... )
Johannes Schindelinbd321bc2005-10-26 15:10:20 +020014
15DESCRIPTION
16-----------
17Finds symbolic names suitable for human digestion for revisions given in any
Thomas Rast0b444cd2010-01-10 00:33:00 +010018format parsable by 'git rev-parse'.
Johannes Schindelinbd321bc2005-10-26 15:10:20 +020019
20
21OPTIONS
22-------
23
24--tags::
25 Do not use branch names, but only tags to name the commits
26
Johannes Schindelin2afc29a2007-02-17 19:22:35 +010027--refs=<pattern>::
Namhyung Kim98c5c4a2013-06-18 21:35:31 +090028 Only use refs whose names match a given shell pattern. The pattern
29 can be one of branch name, tag name or fully qualified ref name.
Johannes Schindelin2afc29a2007-02-17 19:22:35 +010030
Johannes Schindelinbd321bc2005-10-26 15:10:20 +020031--all::
32 List all commits reachable from all refs
33
34--stdin::
Ramkumar Ramachandra3087b612013-07-07 18:13:16 +053035 Transform stdin by substituting all the 40-character SHA-1
36 hexes (say $hex) with "$hex ($rev_name)". When used with
37 --name-only, substitute with "$rev_name", omitting $hex
38 altogether. Intended for the scripter's use.
Johannes Schindelinbd321bc2005-10-26 15:10:20 +020039
Shawn O. Pearce23615702007-05-21 03:20:25 -040040--name-only::
41 Instead of printing both the SHA-1 and the name, print only
42 the name. If given with --tags the usual tag prefix of
Brian Hetro02783072007-08-23 20:44:13 -040043 "tags/" is also omitted from the name, matching the output
Junio C Hamano372c7672008-08-02 11:58:34 -070044 of `git-describe` more closely.
Shawn O. Pearce23615702007-05-21 03:20:25 -040045
Stephan Beyereba13512008-06-08 03:36:12 +020046--no-undefined::
47 Die with error code != 0 when a reference is undefined,
48 instead of printing `undefined`.
49
50--always::
51 Show uniquely abbreviated commit object as fallback.
52
Johannes Schindelinbd321bc2005-10-26 15:10:20 +020053EXAMPLE
54-------
55
56Given a commit, find out where it is relative to the local refs. Say somebody
Alp Toker2a758482006-07-11 11:19:33 +010057wrote you about that fantastic commit 33db5f4d9027a10e477ccf054b2c1ab94f74c85a.
Johannes Schindelinbd321bc2005-10-26 15:10:20 +020058Of course, you look into the commit, but that only tells you what happened, but
59not the context.
60
Thomas Rast0b444cd2010-01-10 00:33:00 +010061Enter 'git name-rev':
Johannes Schindelinbd321bc2005-10-26 15:10:20 +020062
63------------
64% git name-rev 33db5f4d9027a10e477ccf054b2c1ab94f74c85a
Junio C Hamanoee837242008-08-30 13:08:50 -07006533db5f4d9027a10e477ccf054b2c1ab94f74c85a tags/v0.99~940
Johannes Schindelinbd321bc2005-10-26 15:10:20 +020066------------
67
68Now you are wiser, because you know that it happened 940 revisions before v0.99.
69
70Another nice thing you can do is:
71
72------------
73% git log | git name-rev --stdin
74------------
75
Johannes Schindelinbd321bc2005-10-26 15:10:20 +020076GIT
77---
Christian Couder9e1f0a82008-06-06 09:07:32 +020078Part of the linkgit:git[1] suite