git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] t5534: fix misleading grep invocation

From
Junio C Hamano <gitster@pobox.com>
Date
Jul 7, 2017, 16:41 UTC
Message-ID
<xmqq8tk0ci7q.fsf@gitster.mtv.corp.google.com>
In-Reply-To
<alpine.DEB.2.21.1.1707071259550.84669@virtualbox>
Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
Show 8 quoted lines
> Yes, there are grep versions that behave differently... how did you guess?
>
> I am in the middle of an extended investigation trying to assess how
> feasible it would be to use a native Win32 port of BusyBox (started by
> long-time Git contributor Nguyễn Thái Ngọc Duy) in Git for Windows to
> execute the many, many remaining Unix shell scripts that are a core part
> of Git (including crucial functionality such as bisect, rebase, stash and
> submodule, for which we suffer portability and performance problems).

I've long thought that BusyBox was primarily about size and not about performance, but I can imagine that it would be a big win to be able to run things like "mkdir" and "rm" without fork/exec, as it is likely to be extermely more expensive than preparing to call and actually making system calls mkdir(2), unlink(2), etc.

Interesting. I learned a new thing today, but apparently that FEATURE_SH_NOFORK was not a very new development. I do not think anybody is crazy enough to attempt making Git a nofork applet, though ;-)

Previous: Johannes Schindelin
Message 6 of 6 in “t5534: fix misleading grep invocation”
  1. t5534: fix misleading grep invocationJohannes Schindelin, Jul 5, 2017
  2. Junio C HamanoJul 5, 2017
  3. Michael J GruberJul 6, 2017
  4. Junio C HamanoJul 6, 2017
  5. Johannes SchindelinJul 7, 2017
  6. Junio C HamanoJul 7, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.