propagate --quiet to send-pack/receive-pack
Currently, git push --quiet produces some non-error output, e.g.: $ git push --quiet Unpacking objects: 100% (3/3), done. Add the --quiet option to send-pack/receive-pack and pass it to unpack-objects in the receive-pack codepath and to receive-pack in the push codepath. This fixes a bug reported for the fedora git package: https://bugzilla.redhat.com/show_bug.cgi?id=725593 Reported-by: Jesse Keating <jkeating@redhat.com> Cc: Todd Zullinger <tmz@pobox.com> Signed-off-by: Clemens Buchacher <drizzd@aon.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint
							parent
							
								
									2579e1d293
								
							
						
					
					
						commit
						90a6c7d443
					
				|  | @ -8,7 +8,7 @@ git-receive-pack - Receive what is pushed into the repository | |||
|  | ||||
| SYNOPSIS | ||||
| -------- | ||||
| 'git-receive-pack' <directory> | ||||
| 'git-receive-pack' [--quiet] <directory> | ||||
|  | ||||
| DESCRIPTION | ||||
| ----------- | ||||
|  | @ -34,6 +34,9 @@ are not fast-forwards. | |||
|  | ||||
| OPTIONS | ||||
| ------- | ||||
| --quiet:: | ||||
| 	Print only error messages. | ||||
|  | ||||
| <directory>:: | ||||
| 	The repository to sync into. | ||||
|  | ||||
|  |  | |||
|  | @ -8,7 +8,7 @@ git-send-pack - Push objects over git protocol to another repository | |||
|  | ||||
| SYNOPSIS | ||||
| -------- | ||||
| 'git send-pack' [--all] [--dry-run] [--force] [--receive-pack=<git-receive-pack>] [--verbose] [--thin] [<host>:]<directory> [<ref>...] | ||||
| 'git send-pack' [--all] [--dry-run] [--force] [--receive-pack=<git-receive-pack>] [--quiet] [--verbose] [--thin] [<host>:]<directory> [<ref>...] | ||||
|  | ||||
| DESCRIPTION | ||||
| ----------- | ||||
|  | @ -44,6 +44,9 @@ OPTIONS | |||
| 	the remote repository can lose commits; use it with | ||||
| 	care. | ||||
|  | ||||
| --quiet:: | ||||
| 	Print only error messages. | ||||
|  | ||||
| --verbose:: | ||||
| 	Run verbosely. | ||||
|  | ||||
|  |  | |||
|  | @ -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; | ||||
|  | @ -653,6 +653,8 @@ static const char *unpack(void) | |||
| 		int code, i = 0; | ||||
| 		const char *unpacker[4]; | ||||
| 		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); | ||||
|  |  | |||
|  | @ -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)); | ||||
|  |  | |||
|  | @ -766,7 +766,9 @@ static int push_git(struct discovery *heads, int nr_spec, char **specs) | |||
| 		argv[argc++] = "--thin"; | ||||
| 	if (options.dry_run) | ||||
| 		argv[argc++] = "--dry-run"; | ||||
| 	if (options.verbosity > 1) | ||||
| 	if (options.verbosity < 0) | ||||
| 		argv[argc++] = "--quiet"; | ||||
| 	else if (options.verbosity > 1) | ||||
| 		argv[argc++] = "--verbose"; | ||||
| 	argv[argc++] = url; | ||||
| 	for (i = 0; i < nr_spec; i++) | ||||
|  |  | |||
							
								
								
									
										10
									
								
								transport.c
								
								
								
								
							
							
						
						
									
										10
									
								
								transport.c
								
								
								
								
							|  | @ -482,14 +482,18 @@ static int set_git_option(struct git_transport_options *opts, | |||
| static int connect_setup(struct transport *transport, int for_push, int verbose) | ||||
| { | ||||
| 	struct git_transport_data *data = transport->data; | ||||
| 	struct strbuf sb = STRBUF_INIT; | ||||
|  | ||||
| 	if (data->conn) | ||||
| 		return 0; | ||||
|  | ||||
| 	data->conn = git_connect(data->fd, transport->url, | ||||
| 				 for_push ? data->options.receivepack : | ||||
| 				 data->options.uploadpack, | ||||
| 	strbuf_addstr(&sb, for_push ? data->options.receivepack : | ||||
| 				 data->options.uploadpack); | ||||
| 	if (for_push && transport->verbose < 0) | ||||
| 		strbuf_addstr(&sb, " --quiet"); | ||||
| 	data->conn = git_connect(data->fd, transport->url, sb.buf, | ||||
| 				 verbose ? CONNECT_VERBOSE : 0); | ||||
| 	strbuf_release(&sb); | ||||
|  | ||||
| 	return 0; | ||||
| } | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Clemens Buchacher
						Clemens Buchacher