Re: [GSoC] Intro and Micro-project
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Mar 21, 2023, 17:41 UTC
- Message-ID
- <xmqqo7omhuia.fsf@gitster.g>
- In-Reply-To
- <ZBnmsoRmQGKkQt+S@nand.local>
Taylor Blau <me@ttaylorr.com> writes:
Show 12 quoted lines
> That sounds great! I assume that you meant avoiding pipelines where the > 'git' executable is in a non-terminal position of the pipe, e.g.: > > $ git blah | <something else> > > Since if "git blah" exited with a non-zero code or crashed, etc., then > we wouldn't see the failure since the pipeline would suppress it. > > That has been a long-standing goal within the test suite, and I think > that it's a great project to get you started. It'll ensure that you have > all of the bits in the right place to get Git running on your machine > and that you're able to run the tests.
Yes, but can somebody rewrite the micro-project idea page to clarify what the "pipe" thing is about a bit more, so that you do not have to repeat the above explanation the next time ;-)?
It is not "we do not want pipe", but it is about "we do not want to ignore exit status of git". So just like
$ git <subcommand> | <some other command>
sequence is bad, we want to avoid
$ <some command> $(git <subcommand>)
that feeds output of Git as an argument to some other command. And
<some command> <<EOF ... some text ... $(git <subcommand) EOF
is bad too. But
var=$(git <subcommand>)
is OK ;-).