transport: pass "quiet" flag to pack-objects
authorJeff King <peff@peff.net>
Wed, 5 Aug 2009 20:22:36 +0000 (16:22 -0400)
committerJunio C Hamano <gitster@pobox.com>
Thu, 6 Aug 2009 03:14:09 +0000 (20:14 -0700)
When pushing over the git protocol, pack-objects gives
progress reports about the pack being sent. If "push" is
given the --quiet flag, it now passes "-q" to pack-objects,
suppressing this output.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin-send-pack.c
send-pack.h
transport.c

index 47fb9f7baa9ad9c070e1a6d9c245300ba2402ce5..37e528e28364fbde5a5ba31316aa7bf66d43586b 100644 (file)
@@ -44,6 +44,7 @@ static int pack_objects(int fd, struct ref *refs, struct extra_have_objects *ext
                NULL,
                NULL,
                NULL,
+               NULL,
        };
        struct child_process po;
        int i;
@@ -53,6 +54,8 @@ static int pack_objects(int fd, struct ref *refs, struct extra_have_objects *ext
                argv[i++] = "--thin";
        if (args->use_ofs_delta)
                argv[i++] = "--delta-base-offset";
+       if (args->quiet)
+               argv[i++] = "-q";
        memset(&po, 0, sizeof(po));
        po.argv = argv;
        po.in = -1;
index 1d7b1b3b4f41177dfd6637fcd98a0fc01f310c09..8b3cf028ed1c54f8a513ad0bcddc847ad47fe602 100644 (file)
@@ -3,6 +3,7 @@
 
 struct send_pack_args {
        unsigned verbose:1,
+               quiet:1,
                send_mirror:1,
                force_update:1,
                use_thin_pack:1,
index de0d5874a3d867d71eaec3cd1dde1bf2f09cfe4d..c3191ed20125b7b40f973d23d610adedb27e9209 100644 (file)
@@ -892,6 +892,7 @@ static int git_transport_push(struct transport *transport, struct ref *remote_re
        args.force_update = !!(flags & TRANSPORT_PUSH_FORCE);
        args.use_thin_pack = data->thin;
        args.verbose = !!(flags & TRANSPORT_PUSH_VERBOSE);
+       args.quiet = !!(flags & TRANSPORT_PUSH_QUIET);
        args.dry_run = !!(flags & TRANSPORT_PUSH_DRY_RUN);
 
        ret = send_pack(&args, data->fd, data->conn, remote_refs,