summaryrefslogtreecommitdiff
path: root/builtin
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2011-08-23 22:19:45 (GMT)
committerJunio C Hamano <gitster@pobox.com>2011-08-23 22:19:45 (GMT)
commitffa69e61d3c5730bd4b65a465efc130b0ef3c7df (patch)
treecb407630cecb82890077897c58e9595c73080b03 /builtin
parent4a13c4d14841343d7caad6ed41a152fee550261d (diff)
parent0d086b8e33820d7cf87386a912e2939c59822f35 (diff)
downloadgit-ffa69e61d3c5730bd4b65a465efc130b0ef3c7df.zip
git-ffa69e61d3c5730bd4b65a465efc130b0ef3c7df.tar.gz
git-ffa69e61d3c5730bd4b65a465efc130b0ef3c7df.tar.bz2
Merge branch 'cb/maint-quiet-push' into maint
* cb/maint-quiet-push: receive-pack: do not overstep command line argument array propagate --quiet to send-pack/receive-pack Conflicts: Documentation/git-receive-pack.txt Documentation/git-send-pack.txt
Diffstat (limited to 'builtin')
-rw-r--r--builtin/receive-pack.c14
-rw-r--r--builtin/send-pack.c11
2 files changed, 21 insertions, 4 deletions
diff --git a/builtin/receive-pack.c b/builtin/receive-pack.c
index e1a687a..0d51bfb 100644
--- a/builtin/receive-pack.c
+++ b/builtin/receive-pack.c
@@ -636,7 +636,7 @@ static const char *parse_pack_header(struct pack_header *hdr)
static const char *pack_lockfile;
-static const char *unpack(void)
+static const char *unpack(int quiet)
{
struct pack_header hdr;
const char *hdr_err;
@@ -651,8 +651,10 @@ static const char *unpack(void)
if (ntohl(hdr.hdr_entries) < unpack_limit) {
int code, i = 0;
- const char *unpacker[4];
+ const char *unpacker[5];
unpacker[i++] = "unpack-objects";
+ if (quiet)
+ unpacker[i++] = "-q";
if (receive_fsck_objects)
unpacker[i++] = "--strict";
unpacker[i++] = hdr_arg;
@@ -753,6 +755,7 @@ static void add_alternate_refs(void)
int cmd_receive_pack(int argc, const char **argv, const char *prefix)
{
+ int quiet = 0;
int advertise_refs = 0;
int stateless_rpc = 0;
int i;
@@ -766,6 +769,11 @@ int cmd_receive_pack(int argc, const char **argv, const char *prefix)
const char *arg = *argv++;
if (*arg == '-') {
+ if (!strcmp(arg, "--quiet")) {
+ quiet = 1;
+ continue;
+ }
+
if (!strcmp(arg, "--advertise-refs")) {
advertise_refs = 1;
continue;
@@ -814,7 +822,7 @@ int cmd_receive_pack(int argc, const char **argv, const char *prefix)
const char *unpack_status = NULL;
if (!delete_only(commands))
- unpack_status = unpack();
+ unpack_status = unpack(quiet);
execute_commands(commands, unpack_status);
if (pack_lockfile)
unlink_or_warn(pack_lockfile);
diff --git a/builtin/send-pack.c b/builtin/send-pack.c
index c1f6ddd..40a1675 100644
--- a/builtin/send-pack.c
+++ b/builtin/send-pack.c
@@ -439,6 +439,10 @@ int cmd_send_pack(int argc, const char **argv, const char *prefix)
args.force_update = 1;
continue;
}
+ if (!strcmp(arg, "--quiet")) {
+ args.quiet = 1;
+ continue;
+ }
if (!strcmp(arg, "--verbose")) {
args.verbose = 1;
continue;
@@ -488,8 +492,13 @@ int cmd_send_pack(int argc, const char **argv, const char *prefix)
fd[0] = 0;
fd[1] = 1;
} else {
- conn = git_connect(fd, dest, receivepack,
+ struct strbuf sb = STRBUF_INIT;
+ strbuf_addstr(&sb, receivepack);
+ if (args.quiet)
+ strbuf_addstr(&sb, " --quiet");
+ conn = git_connect(fd, dest, sb.buf,
args.verbose ? CONNECT_VERBOSE : 0);
+ strbuf_release(&sb);
}
memset(&extra_have, 0, sizeof(extra_have));