Re: [PATCH 2/3] Allow isatty to be overriden with GIT_FORCE_TTY

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 9 Jul 2021 at 21:41, Junio C Hamano <gitster@xxxxxxxxx> wrote:
>
> If we want to force output to always go through the pager, we should
> call it "force pager", not "force tty".  If we want to always show
> progress bar no matter where the output goes, we should call it
> "force progress", not "force tty".  These should be controllable
> independenty, even though it is OK to have catch all "force
> everything" for convenience.
>

But using "force pager" or "force progress" is exactly the same as
acknowledging that git uses tty for the output, as you'd have to know
that the pager wouldn't open because there is no tty. The original
implementation should've been to implement just the "force pager"
logic but we've realised there are more places where git acts in a
different way because of tty and I don't really see a reason those
should be controlled individually, it will just create too many variables
when the reason for their existence is the same, the absence of a tty.

> There is no inherent reason why the output has to be passed through
> the pager when it goes to tty.  It merely is how we happen to have
> designed the heuristics.  We don't want to carve it in stone and
> expose it on end-users with a poorly chosen name.  Also, we do not
> want to tie multiple features unnecessarily.

I mean, git is pretty CLI centered, it isn't a library, so I'd say there is a
pretty strong core reason for this design (at least that's how I see git).
Unfortunately, when we want to use git in its not really CLI-like way, it acts
unexpectedly.

Moreover, I really don't think this feature is intended for the
regular git user,
it will mostly help Fugitive or other programs that are built upon git's core,
and those are most likely have to be familiar with git's implementation in
one way or another.

Avishay



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux