git-cat-file(1) =============== NAME ---- git-cat-file - Provide content or type and size information for repository objects SYNOPSIS -------- [verse] '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 SHA-1, 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 linkgit:gitrevisions[7]. -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 SHA-1, type, size, and contents of each object provided on stdin. May not be combined with any other options or arguments. --batch-check:: Print the SHA-1, 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 ------------ GIT --- Part of the linkgit:git[1] suite