Using the latest revision of git: $ ./git --version git version 2.14.GIT $ ./git-grep --files-without-match nope -- blob.c; echo $? blob.c 0 $ ./git-grep --files-without-match --quiet nope -- blob.c; echo $? 1 I expect both to exit 0 Note that blob.c does not contain "nope", here is the revision I am using: https://github.com/git/git/blob/b3622a4ee94e4916cd05e6d96e41eeb36b941182/blob.c -- this file / case isn't special I just picked a reproduction that may be convenient for git developers. Anthony