Thread (8 messages) 8 messages, 4 authors, 2016-06-15

Re: Push not writing to standard error

From: Jeff King <hidden>
Date: 2016-06-15 22:49:46

On Tue, Oct 12, 2010 at 02:21:17PM -0500, Jonathan Nieder wrote:
Chase Brammer wrote:
quoted
                                   saving the standard error from bash
to a file during a push doesn't seem to be working.  I am only able to
get standard output, which doesn't give the progress of the push
(counting, delta, compressing, and writing status).
[...]
quoted
git push origin master --progress > ~/push_error_output.txt 2>&1
[...]
quoted
Idea's on work arounds or upcoming patches to fix this?
None from me.  But some hints for a patch:

 - As the man page says,

   --progress

	Progress status is reported on the standard error stream
	by default when it is attached to a terminal, unless -q is
	specified. This flag forces progress status even if the
	standard error stream is not directed to a terminal.

   It looks like this facility is not working.

 - Terminals are distinguished from nonterminals with isatty()

 - The "Counting objects..." output comes from pack-objects.
   Running with GIT_TRACE=1 reveals that the --progress option is
   not being passed to pack-objects as it should be.

 - Is this a regression?  If so, narrowing the regression window
   with a few rounds of "git bisect" could be helpful.
It looks like transport_set_verbosity gets called correctly, and then
sets the "progress" flag for the transport. But for the push side, I
don't see any transports actually looking at that flag. I think there
needs to be code in git_transport_push to handle the progress flag, and
it just isn't there.

-Peff
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help