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, currently:
$ git cat-file -e malformed; echo $?
fatal: Not a valid object name malformed
128
A careful reader of this documentation would be mislead into thinking
the could write:
if ! git cat-file -e "$object" [...]
As opposed to:
if ! git cat-file -e "$object" 2>/dev/null [...]
To check whether some arbitrary $object string was both valid, and
pointed to an object that exists.
Signed-off-by: Ævar Arnfjörð Bjarmason <[email protected]>
---
Documentation/git-cat-file.txt | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/Documentation/git-cat-file.txt b/Documentation/git-cat-file.txt
index fb09cd69d6..f90f09b03f 100644
--- a/Documentation/git-cat-file.txt
+++ b/Documentation/git-cat-file.txt
@@ -42,8 +42,9 @@ OPTIONS
<object>.
-e::
- Suppress all output; instead exit with zero status if <object>
- exists and is a valid object.
+ Exit with zero status if <object> exists and is a valid
+ object. If <object> is of an invalid format exit with non-zero and
+ emits an error on stderr.
-p::
Pretty-print the contents of <object> based on its type.
@@ -168,7 +169,7 @@ 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 `-e` is specified, no output, unless the <object> is malformed.
If `-p` is specified, the contents of <object> are pretty-printed.
--
2.15.1.424.g9478a66081