Re: Git branch outputs usage message on stderr

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

 



Well, let me add that one detail: I could not find any other git sub command which behaves the same (admittedly haven't tried all). Instead, the ones I have tried give their help output usually on stdout. Try yourself with `git -h`. It perfectly acts according to what I'd expect (exit status 0). Where as `git reflog -h`outputs to stdout but still exit with non-zero status (which seems okay). `git branch -h` adds a third way, as described. I argue: That diverging behavior is confusing to the user.

If your claim was right, this bug report got even bigger as a lot of behavior from other subcommands would have to be changed. In fact, what "substantial material" is, has to be defined for every piece of software regarding each output. However, I cannot see how one subcommand's usage message is considered "substantial" whereas another subcommand's usage message is not (besides, I guess, `git branch` is more frequently used than `git reflog`).


Best,
Jonas

On 15.01.25 12:36, Matěj Cepl wrote:
On Wed Jan 15, 2025 at 12:22 PM CET, Jonas Konrad wrote:
What did you do before the bug happened? (Steps to reproduce your issue)
I opened a terminal on Arch Linux with a bash shell and called `git
branch -h` to get a usage overview of git's `branch` command. I then
tried processing the output with `grep` by `git branch -h | grep list`
which gave the whole (unfiltered) output, i.e., the displayed message
was not processed by `grep`.
And that is exactly the correct behaviour. In the world of UNIX,
where pipes are normal, utilities should send to the stdout
only substantial material, which could be processed down the
pipeline. Error messages, help, and similar diagnostics, should
go to stderr. Also, you know about `|&`, right?

Best,

Matěj

<<attachment: smime.p7s>>


[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