git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 1/3] send-pack: show progress when isatty(2)

From
Jeff King <peff@peff.net>
Date
May 1, 2012, 08:41 UTC
Message-ID
<20120501084139.GA4998@sigill.intra.peff.net>
In-Reply-To
<20120501084048.GA21904@sigill.intra.peff.net>

The send_pack_args struct has two verbosity flags: "quiet" and "progress". Originally, if "quiet" was set, we would tell pack-objects explicitly to be quiet, and if "progress" was set, we would tell it to show progress. Otherwise, we told it neither, and it relied on isatty(2) to make the decision itself.

However, commit 01fdc21 changed the meaning of these variables. Now both "quiet" and "!progress" instruct us to tell pack-objects to be quiet (and a non-zero "progress" means the same as before). This works well for transports which call send_pack directly, as the transport code copies transport->progress into send_pack_args->progress, and they both have the same meaning.

However, the code path of calling "git send-pack" was left behind. It always sets "progress" to 0, and thus always tells pack-objects to be quiet. We can work around this by checking isatty(2) ourselves in the cmd_send_pack code path, restoring the original behavior of the send-pack command.

Signed-off-by: Jeff King <peff@peff.net>
---
 builtin/send-pack.c |    3 +++
 1 file changed, 3 insertions(+)
diff --git a/builtin/send-pack.c b/builtin/send-pack.c
index 9df341c..7d22715 100644
--- a/builtin/send-pack.c
+++ b/builtin/send-pack.c
@@ -492,6 +492,9 @@ int cmd_send_pack(int argc, const char **argv, const char *prefix)
 		}
 	}
 
+	if (!args.quiet)
+		args.progress = isatty(2);
+
 	if (args.stateless_rpc) {
 		conn = NULL;
 		fd[0] = 0;
-- 
1.7.10.630.g31718

-- 
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.

You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
Previous: Jeff KingNext: Jeff King
Message 4 of 14 in “Re: 1.7.10 doesn't show file pushstatus”
  1. Jeff KingMay 1, 2012
  2. Jeff KingMay 1, 2012
  3. Jeff KingMay 1, 2012
  4. 1/3 send-pack: show progress when isatty(2)Jeff King, May 1, 2012
  5. 2/3 teach send-pack about --[no-]progressJeff King, May 1, 2012
  6. 3/3 t5541: test more combinations of --progressJeff King, May 1, 2012
  7. Clemens BuchacherMay 1, 2012
  8. Jeff KingMay 1, 2012
  9. David EbboMay 1, 2012
  10. Zbigniew Jędrzejewski-SzmekMay 1, 2012
  11. Junio C HamanoMay 1, 2012
  12. Clemens BuchacherMay 1, 2012
  13. Junio C HamanoMay 1, 2012
  14. Johannes SchindelinMay 2, 2012

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.