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

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


SYNOPSIS
--------
'git-cat-file' (-t | -s | -e | <type>) <object>

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

OPTIONS
-------
<object>::
	The sha1 identifier of the object.

-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.

<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.

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 gitlink:git[7] suite

