Re: [PATCHv2 3/4] git-am foreign patch support: StGIT support

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

 



On Wed, May 27, 2009 at 9:19 AM, Junio C Hamano <gitster@xxxxxxxxx> wrote:
> Giuseppe Bilotta <giuseppe.bilotta@xxxxxxxxx> writes:
>
>> +             # set the patch format appropriately
>> +             patch_format=stgit
>> +             # now handle the actual StGIT patches
>> +             split_patches "$@"
>
> Can an stgit patch file (or the leading pathname for that matter) have IFS
> character in its name?

StGIT sanitizes filenames in a way similar to what format-patch does.

>> +             ;;
>> +     stgit)
>> +             this=0
>> +             for stgit in "$@"
>> +             do
>> +                     this=`expr "$this" + 1`
>> +                     msgnum=`printf "%0${prec}d" $this`
>> +                     touch "$dotest/$msgnum"
>
> Portability tip from an old timer: do not create a new empty file with
> "touch" (only use that command to update the timestamp of an existing
> file).
>
> Instead say
>
>        >"$dotest/$msgnum"
>
>> +                     # Awk version of StGIT parse_patch. The first nonemptyline
>> +                     # not starting with Author, From or Date is the
>> +                     # subject, and the body starts with the next nonempty
>> +                     # line not starting with Author, From or Date
>> +                     awk 'BEGIN { subject=0 }
>> +                     {
>> +                             if (subject > 1)
>> +                                     print ;
>> +                             else if (/^$/) next ;
>> +                             else if (/^Author:/) print sub("Author", "From"), $ORS ;
>
> Can any token that match Author other than the initial "Author: " appear
> on this line?

Irrelevant, sub only substitutes the first hit so only the initial
Author: is replaced.

> Since we rely on Perl but not awk in core-ish part of the scripted
> Porcelains, it might be a good idea to write this in Perl as well.

By 'as well' you mean in case awk is missing, and have both, or by
only keeping a perl version?

-- 
Giuseppe "Oblomov" Bilotta
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[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]