diff options
author | Jeff King <peff@peff.net> | 2016-07-15 06:26:29 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2016-07-20 12:09:31 -0700 |
commit | f26eef302fc315394d1016eb06360637ac86f62e (patch) | |
tree | 15a18544433e8d57d7349c9dfe437b93784cc4fc /connected.c | |
parent | 08bb3500a2a718c3c78b0547c68601cafa7a8fd9 (diff) | |
download | git-f26eef302fc315394d1016eb06360637ac86f62e.tar.gz |
check_everything_connected: always pass --quiet to rev-list
The check_everything_connected function takes a "quiet"
parameter which does two things if non-zero:
1. redirect rev-list's stderr to /dev/null to avoid
showing errors to the user
2. pass "--quiet" to rev-list
Item (1) is obviously useful. But item (2) is
surprisingly not. For rev-list, "--quiet" does not have
anything to do with chattiness on stderr; it tells rev-list
not to bother writing the list of traversed objects to
stdout, for efficiency. And since we always redirect
rev-list's stdout to /dev/null in this function, there is no
point in asking it to ever write anything to stdout.
The efficiency gains are modest; a best-of-five run of "git
rev-list --objects --all" on linux.git dropped from 32.013s
to 30.502s when adding "--quiet". That's only about 5%, but
given how easy it is, it's worth doing.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'connected.c')
-rw-r--r-- | connected.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/connected.c b/connected.c index bf1b12e7ec..7560a31628 100644 --- a/connected.c +++ b/connected.c @@ -56,8 +56,7 @@ static int check_everything_connected_real(sha1_iterate_fn fn, argv[ac++] = "--stdin"; argv[ac++] = "--not"; argv[ac++] = "--all"; - if (quiet) - argv[ac++] = "--quiet"; + argv[ac++] = "--quiet"; argv[ac] = NULL; rev_list.argv = argv; |