From 9bd2ce543298c9b2f1a6d1bb8ffef18295ccfec7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=86var=20Arnfj=C3=B6r=C3=B0=20Bjarmason?= Date: Wed, 10 Jan 2018 12:55:53 +0000 Subject: cat-file doc: document that -e will return some output MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The -e option added in 7950571ad7 ("A few more options for git-cat-file", 2005-12-03) has always errored out with message on stderr saying that the provided object is malformed, like this: $ git cat-file -e malformed; echo $? fatal: Not a valid object name malformed 128 A reader of this documentation may be misled into thinking that if ! git cat-file -e "$object" [...] as opposed to: if ! git cat-file -e "$object" 2>/dev/null [...] is sufficient to implement a truly silent test that checks whether some arbitrary $object string was both valid, and pointed to an object that exists. Signed-off-by: Ævar Arnfjörð Bjarmason Signed-off-by: Junio C Hamano diff --git a/Documentation/git-cat-file.txt b/Documentation/git-cat-file.txt index fb09cd6..f90f09b 100644 --- a/Documentation/git-cat-file.txt +++ b/Documentation/git-cat-file.txt @@ -42,8 +42,9 @@ OPTIONS . -e:: - Suppress all output; instead exit with zero status if - exists and is a valid object. + Exit with zero status if exists and is a valid + object. If is of an invalid format exit with non-zero and + emits an error on stderr. -p:: Pretty-print the contents of based on its type. @@ -168,7 +169,7 @@ If `-t` is specified, one of the . If `-s` is specified, the size of the in bytes. -If `-e` is specified, no output. +If `-e` is specified, no output, unless the is malformed. If `-p` is specified, the contents of are pretty-printed. -- cgit v0.10.2-6-g49f6