Eric Sunshine <sunshine@xxxxxxxxxxxxxx> writes: > On Fri, Apr 5, 2019 at 2:24 PM Jeff King <peff@xxxxxxxx> wrote: >> On Fri, Apr 05, 2019 at 12:50:33PM +0200, SZEDER Gábor wrote: >> > > + git cat-file commit $commit | >> > > + perl -lpe "/^author/ && print q(parent $blob)" \ >> > > + >broken-commit && >> >> > Wouldn't a 'sed' one-liner suffice, so we won't have yet another perl >> > dependency? >> >> Heh, this was actually the subject of much discussion before the patches >> hit the list. If you can write such a one-liner that is both readable >> and portable, please share it. I got disgusted with sed and suggested >> this perl. > > Trivial and portable 'sed' equivalent: > > git cat-file commit $commit | sed "/^author/ { h; s/.*/parent $blob/; G; }" Looks good. I had a bit of head scratching moment when I saw that "perl -lpe" one-liner; this sed expression may not be crystal clear to those who are not used to, but it is not so bad, either.