All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tay Ray Chuan <rctay89@gmail.com>
To: Git Mailing List <git@vger.kernel.org>
Cc: Jeff King <peff@peff.net>, Jonathan Nieder <jrnieder@gmail.com>,
	Chase Brammer <cbrammer@gmail.com>,
	Junio C Hamano <gitster@pobox.com>
Subject: [PATCH v2 8/8] push: pass --progress down to git-pack-objects
Date: Sun, 17 Oct 2010 02:37:03 +0800	[thread overview]
Message-ID: <1287254223-4496-9-git-send-email-rctay89@gmail.com> (raw)
In-Reply-To: <1287254223-4496-8-git-send-email-rctay89@gmail.com>

From: Jeff King <peff@peff.net>

When pushing via builtin transports (like file://, git://), the
underlying transport helper (in this case, git-pack-objects) did not get
the --progress option, even if it was passed to git push.

Fix this, and update the tests to reflect this.

Note that according to the git-pack-objects documentation, we can safely
apply the usual --progress semantics for the transport commands like
clone and fetch (and for pushing over other smart transports).

Reported-by: Chase Brammer <cbrammer@gmail.com>
Helped-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
---

  No significant changes other than those incurred while rebasing on
  top of Jeff's patches.

 builtin/send-pack.c      |    3 +++
 send-pack.h              |    1 +
 t/t5523-push-upstream.sh |    4 ++--
 transport.c              |    1 +
 4 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/builtin/send-pack.c b/builtin/send-pack.c
index 481602d..efd9be6 100644
--- a/builtin/send-pack.c
+++ b/builtin/send-pack.c
@@ -48,6 +48,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;
@@ -59,6 +60,8 @@ static int pack_objects(int fd, struct ref *refs, struct extra_have_objects *ext
 		argv[i++] = "--delta-base-offset";
 	if (args->quiet)
 		argv[i++] = "-q";
+	if (args->progress)
+		argv[i++] = "--progress";
 	memset(&po, 0, sizeof(po));
 	po.argv = argv;
 	po.in = -1;
diff --git a/send-pack.h b/send-pack.h
index 60b4ba6..05d7ab1 100644
--- a/send-pack.h
+++ b/send-pack.h
@@ -5,6 +5,7 @@ struct send_pack_args {
 	unsigned verbose:1,
 		quiet:1,
 		porcelain:1,
+		progress:1,
 		send_mirror:1,
 		force_update:1,
 		use_thin_pack:1,
diff --git a/t/t5523-push-upstream.sh b/t/t5523-push-upstream.sh
index f43d760..c229fe6 100755
--- a/t/t5523-push-upstream.sh
+++ b/t/t5523-push-upstream.sh
@@ -78,7 +78,7 @@ test_expect_success TTY 'progress messages go to tty' '
 	grep "Writing objects" err
 '
 
-test_expect_failure 'progress messages do not go to non-tty' '
+test_expect_success 'progress messages do not go to non-tty' '
 	ensure_fresh_upstream &&
 
 	# skip progress messages, since stderr is non-tty
@@ -86,7 +86,7 @@ test_expect_failure 'progress messages do not go to non-tty' '
 	! grep "Writing objects" err
 '
 
-test_expect_failure 'progress messages go to non-tty (forced)' '
+test_expect_success 'progress messages go to non-tty (forced)' '
 	ensure_fresh_upstream &&
 
 	# force progress messages to stderr, even though it is non-tty
diff --git a/transport.c b/transport.c
index 4dba6f8..0078660 100644
--- a/transport.c
+++ b/transport.c
@@ -789,6 +789,7 @@ static int git_transport_push(struct transport *transport, struct ref *remote_re
 	args.use_thin_pack = data->options.thin;
 	args.verbose = (transport->verbose > 0);
 	args.quiet = (transport->verbose < 0);
+	args.progress = transport->progress;
 	args.dry_run = !!(flags & TRANSPORT_PUSH_DRY_RUN);
 	args.porcelain = !!(flags & TRANSPORT_PUSH_PORCELAIN);
 
-- 
1.7.2.2.513.ge1ef3

  reply	other threads:[~2010-10-16 18:38 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-10-12 19:04 Push not writing to standard error Chase Brammer
2010-10-12 19:21 ` Jonathan Nieder
2010-10-12 19:32   ` Jeff King
2010-10-12 19:38     ` Jeff King
2010-10-12 20:37       ` Chase Brammer
2010-10-12 20:48         ` Jeff King
2010-10-12 22:18           ` Chase Brammer
2010-10-13 17:33       ` Junio C Hamano
2010-10-13 17:45         ` Jeff King
2010-10-12 22:21 ` [PATCH] Fix to push --progress. The --progress flag was not being passed into tranport.c from send-pack.h, making the --progress flag unusable Chase Brammer
2010-10-12 22:44   ` Jonathan Nieder
2010-10-13 17:49   ` Junio C Hamano
2010-10-13 17:55     ` Jeff King
2010-10-13 18:40   ` Tay Ray Chuan
2010-10-13 19:31   ` [PATCH 0/3] fix push --progress over file://, git://, etc Tay Ray Chuan
2010-10-13 19:31     ` [PATCH 1/3] t5523-push-upstream: add function to ensure fresh upstream repo Tay Ray Chuan
2010-10-13 19:30       ` Jonathan Nieder
2010-10-13 19:31       ` [PATCH 2/3] t5523-push-upstream: test progress messages Tay Ray Chuan
2010-10-13 19:31         ` [PATCH 3/3] push: pass --progress down to git-pack-objects Tay Ray Chuan
2010-10-14  0:59           ` Tay Ray Chuan
2010-10-14  1:24             ` Jeff King
2010-10-13 19:35     ` [PATCH 0/3] fix push --progress over file://, git://, etc Tay Ray Chuan
2010-10-16 18:36       ` [PATCH v2 0/8] " Tay Ray Chuan
2010-10-16 18:36         ` [PATCH v2 1/8] tests: factor out terminal handling from t7006 Tay Ray Chuan
2010-10-16 18:36           ` [PATCH v2 2/8] tests: test terminal output to both stdout and stderr Tay Ray Chuan
2010-10-16 18:36             ` [PATCH v2 3/8] test-lib: allow test code to check the list of declared prerequisites Tay Ray Chuan
2010-10-16 18:36               ` [PATCH v2 4/8] test_terminal: catch use without TTY prerequisite Tay Ray Chuan
2010-10-16 18:37                 ` [PATCH v2 5/8] test_terminal: give priority to test-terminal.perl usage Tay Ray Chuan
2010-10-16 18:37                   ` [PATCH v2 6/8] t5523-push-upstream: add function to ensure fresh upstream repo Tay Ray Chuan
2010-10-16 18:37                     ` [PATCH v2 7/8] t5523-push-upstream: test progress messages Tay Ray Chuan
2010-10-16 18:37                       ` Tay Ray Chuan [this message]
2010-10-17  0:46                       ` Jonathan Nieder
2010-10-17  0:38                   ` [PATCH v2 5/8] test_terminal: give priority to test-terminal.perl usage Jonathan Nieder
2010-10-22 19:42                   ` Jeff King
2010-10-17  0:51         ` [PATCH v2 0/8] fix push --progress over file://, git://, etc Jonathan Nieder
2010-10-14  3:02     ` [PATCH 0/3] more push progress tests Jeff King
2010-10-14  3:04       ` [PATCH 1/3] tests: factor out terminal handling from t7006 Jeff King
2010-10-14  3:10         ` Jonathan Nieder
2010-10-14  3:04       ` [PATCH 2/3] tests: test terminal output to both stdout and stderr Jeff King
2010-10-14  3:27         ` Jonathan Nieder
2010-10-14  3:05       ` [PATCH 3/3] t5523: test push progress output to tty Jeff King
2010-10-14  3:16         ` Jonathan Nieder
2010-10-14  3:34           ` Jeff King
2010-10-14 20:37             ` [PATCH/RFC 0/2] test_terminal: check that TTY prerequisite is declared Jonathan Nieder
2010-10-14 20:40               ` [PATCH 1/2] test-lib: allow test code to check the list of declared prerequisites Jonathan Nieder
2010-10-15  5:18                 ` Ævar Arnfjörð Bjarmason
2010-10-15  5:34                   ` Jonathan Nieder
2010-10-14 20:41               ` [PATCH 2/2] test_terminal: catch use without TTY prerequisite Jonathan Nieder
2010-10-15  4:42               ` [PATCH/RFC 0/2] test_terminal: check that TTY prerequisite is declared Jeff King
2010-10-15 11:27                 ` Tay Ray Chuan
2010-10-18 16:39 ` Push not writing to standard error Scott R. Godin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1287254223-4496-9-git-send-email-rctay89@gmail.com \
    --to=rctay89@gmail.com \
    --cc=cbrammer@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=jrnieder@gmail.com \
    --cc=peff@peff.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.