GIT-CAT-FILE

Section: Git Manual (1)
Updated: 02/27/2011
Index Return to Main Contents
 

NAME

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

SYNOPSIS

git cat-file (-t | -s | -e | -p | <type> | --textconv ) <object>
git cat-file (--batch | --batch-check) < <list-of-objects>

 

DESCRIPTION

In its first form, the command provides the content or the type of an object 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, or --textconv is used (which implies type "blob").

In the second form, a list of objects (separated by linefeeds) is provided on stdin, and the SHA1, type, and size of each object is printed on stdout.  

OPTIONS

<object>

The name of the object to show. For a more complete list of ways to spell object names, see the "SPECIFYING REVISIONS" section in gitrevisions(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.

--textconv

Show the content as transformed by a textconv filter. In this case, <object> has be of the form <treeish>:<path>, or :<path> in order to apply the filter to the content recorded in the index at <path>.

--batch

Print the SHA1, type, size, and contents of each object provided on stdin. May not be combined with any other options or arguments.

--batch-check

Print the SHA1, type, and size of each object provided on stdin. May not be combined with any other options or arguments.
 

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.

If <type> is specified, the raw (though uncompressed) contents of the <object> will be returned.

If --batch is specified, output of the following form is printed for each object specified on stdin:

<sha1> SP <type> SP <size> LF
<contents> LF

If --batch-check is specified, output of the following form is printed for each object specified on stdin:

<sha1> SP <type> SP <size> LF

For both --batch and --batch-check, output of the following form is printed for each object specified on stdin that does not exist in the repository:

<object> SP missing LF

 

AUTHOR

Written by Linus Torvalds <m[blue]torvalds@osdl.orgm[][1]>  

DOCUMENTATION

Documentation by David Greaves, Junio C Hamano and the git-list <m[blue]git@vger.kernel.orgm[][2]>.  

GIT

Part of the git(1) suite  

NOTES

1.
torvalds@osdl.org
mailto:torvalds@osdl.org
2.
git@vger.kernel.org
mailto:git@vger.kernel.org


 

Index

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
OUTPUT
AUTHOR
DOCUMENTATION
GIT
NOTES

This document was created by man2html, using the manual pages.
Time: 19:49:09 GMT, April 27, 2011