Thread (1 message) 1 message, 1 author, 2016-06-15

Re: fatal output from git-show really wants a terminal

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:45:45

"Boyd Stephen Smith Jr." [off-list ref] writes:
quoted
 $ git log >foo.out

and start a pager, which makes no sense.
Good point, I'll try and consider that while I investgate the history of the 
issue.
Isn't the issue about 61b8050 (sending errors to stdout under $PAGER,
2008-02-16)?  With that commit, we changed things so that when we send the
standard output to the $PAGER, we dup stderr to the $PAGER as well,
because otherwise any output to stderr will be wiped out by whatever the
pager does and the user will not notice the breakage.  E.g.

	$ git log

will just show reams of output, and you won't see any errors and warnings
even if there were any encountered during the process.

Unfortunately we did it unconditionally.  There is no reason to dup stderr
to the $PAGER if the command line was:

	$ git log 2>error.log

in which case you would want to view the normal output in your $PAGER and
you are keeping the log of the error output in a separate file.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help