Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

git-name-rev(1) [osx man page]

GIT-NAME-REV(1) 						    Git Manual							   GIT-NAME-REV(1)

git-name-rev - Find symbolic names for given revs SYNOPSIS
git name-rev [--tags] [--refs=<pattern>] ( --all | --stdin | <commit-ish>... ) 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. The pattern can be one of branch name, tag name or fully qualified ref name. If given multiple times, use refs whose names match any of the given shell patterns. Use --no-refs to clear any previous ref patterns given. --exclude=<pattern> Do not use any ref whose name matches a given shell pattern. The pattern can be one of branch name, tag name or fully qualified ref name. If given multiple times, a ref will be excluded when it matches any of the given patterns. When used together with --refs, a ref will be used as a match only when it matches at least one --refs pattern and does not match any --exclude patterns. Use --no-exclude to clear the list of exclude patterns. --all List all commits reachable from all refs --stdin Transform stdin by substituting all the 40-character SHA-1 hexes (say $hex) with "$hex ($rev_name)". When used with --name-only, substitute with "$rev_name", omitting $hex altogether. Intended for the scripter's use. --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 git-describe more closely. --no-undefined Die with error code != 0 when a reference is undefined, instead of printing undefined. --always Show uniquely abbreviated commit object as fallback. 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~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 GIT
Part of the git(1) suite Git 2.17.1 10/05/2018 GIT-NAME-REV(1)

Check Out this Related Man Page

GIT-LOST-FOUND(1)						    Git Manual							 GIT-LOST-FOUND(1)

git-lost-found - Recover lost refs that luckily have not yet been pruned SYNOPSIS
git lost-found DESCRIPTION
NOTE: this command is deprecated. Use git-fsck(1) with the option --lost-found instead. Finds dangling commits and tags from the object database, and creates refs to them in the .git/lost-found/ directory. Commits and tags that dereference to commits are stored in .git/lost-found/commit, and other objects are stored in .git/lost-found/other. OUTPUT
Prints to standard output the object names and one-line descriptions of any commits or tags found. EXAMPLE
Suppose you run git tag -f and mistype the tag to overwrite. The ref to your tag is overwritten, but until you run git prune, the tag itself is still there. .ft C $ git lost-found [1ef2b196d909eed523d4f3c9bf54b78cdd6843c6] GIT 0.99.9c ... .ft Also you can use gitk to browse how any tags found relate to each other. .ft C $ gitk $(cd .git/lost-found/commit && echo ??*) .ft After making sure you know which the object is the tag you are looking for, you can reconnect it to your regular .git/refs hierarchy. .ft C $ git cat-file -t 1ef2b196 tag $ git cat-file tag 1ef2b196 object fa41bbce8e38c67a218415de6cfa510c7e50032a type commit tag v0.99.9c tagger Junio C Hamano <> 1131059594 -0800 GIT 0.99.9c This contains the following changes from the "master" branch, since ... $ git update-ref refs/tags/not-lost-anymore 1ef2b196 $ git rev-parse not-lost-anymore 1ef2b196d909eed523d4f3c9bf54b78cdd6843c6 .ft AUTHOR
Written by Junio C Hamano <[1]> DOCUMENTATION
Documentation by Junio C Hamano and the git-list <[2]>. GIT
Part of the git(1) suite NOTES
1. 2. Git 1.7.1 07/05/2010 GIT-LOST-FOUND(1)
Man Page