git-cat-file(1)
===============

NAME
----
git-cat-file - Provide content or type/size information for repository objects


SYNOPSIS
--------
'git-cat-file' [-t | -s | -e | -p | <type>] <object>

DESCRIPTION
-----------
Provides content or type of objects in the repository. The type
is required unless '-t' or '-p' is used to find the object type,
or '-s' is used to find the object size.

OPTIONS
-------
<object>::
	The name of the object to show.
	For a more complete list of ways to spell object names, see
	"SPECIFYING REVISIONS" section in linkgit:git-rev-parse[1].

-t::
	Instead of the content, show the object type identified by
	<object>.

-s::
	Instead of the content, show the object size identified by
	<object>.

-e::
	Suppress all output; instead exit with zero status if <object>
	exists and is a valid object.

-p::
	Pretty-print the contents of <object> based on its type.

<type>::
	Typically this matches the real type of <object> but asking
	for a type that can trivially be dereferenced from the given
	<object> is also permitted.  An example is to ask for a
	"tree" with <object> being a commit object that contains it,
	or to ask for a "blob" with <object> being a tag object that
	points at it.

OUTPUT
------
If '-t' is specified, one of the <type>.

If '-s' is specified, the size of the <object> in bytes.

If '-e' is specified, no output.

If '-p' is specified, the contents of <object> are pretty-printed.

Otherwise the raw (though uncompressed) contents of the <object> will
be returned.


Author
------
Written by Linus Torvalds <torvalds@osdl.org>

Documentation
--------------
Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel.org>.

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