Re: [PATCH 1/2] rebase -i: optimize the creation of the todo file
- From
Dominique Quatravaux <domq@google.com>
- Date
- Mar 8, 2012, 11:41 UTC
- Message-ID
- <CAJh6GrGcr3nOMR7Yrq7g8c-RgQ4FS_FrhcMb+w-nXQO2nic_rw@mail.gmail.com>
- In-Reply-To
- <CAJh6GrGch9JHYnGW+K-wxdX9wPRry4Lxi2ysTtt0g9FTF4ThTQ@mail.gmail.com>
On Thu, Mar 8, 2012 at 12:36 PM, Dominique Quatravaux <domq@google.com> wrote:
Show 11 quoted lines
> On Thu, Mar 8, 2012 at 12:20 PM, Johannes Sixt <j.sixt@viscovery.net> wrote: >> Am 3/8/2012 11:42, schrieb Dominique Quatravaux: >>> + shortsha1=$(echo $sha1 | cut -c1-7) >> >>> - sha1=$(git rev-parse $shortsha1) >> >> Why do you call it "optimization" when you spend two or three subprocesses >> instead of one? > > echo is a shell internal. "git rev-parse" is two processes just as > "cut" and a pipe.
My mistake, strace git rev-parse revals that this is only one process. Still, I think that saving a bunch of filesystem access beats saving one fork() (one of the two processes in my patched version is a shell, so no execve() there) but I admit I haven't benchmarked this.
-- Dominique Quatravaux +41 79 609 40 72