[pacman-dev] [PATCH] makepkg: speed up svn revision check for large repositories

Xavier shiningxc at gmail.com
Wed Jul 16 02:45:08 EDT 2008


Allan McRae wrote:
> Dan McGee wrote:
>> On Tue, Jul 15, 2008 at 7:15 PM, Dan McGee <dan at archlinux.org> wrote:
>>   
>>> Using the suggestion from FS#10905, use 'svn info' rather than 'svn log' to
>>> get the current revision number, which is much quicker for large Subversion
>>> repositories. Eventually git will rule the world. :)
>>>
>>> Signed-off-by: Dan McGee <dan at archlinux.org>
>>> ---
>>>  scripts/makepkg.sh.in |    2 +-
>>>  1 files changed, 1 insertions(+), 1 deletions(-)
>>>
>>> diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
>>> index b810d60..2ab2aef 100644
>>> --- a/scripts/makepkg.sh.in
>>> +++ b/scripts/makepkg.sh.in
>>> @@ -1017,7 +1017,7 @@ devel_check() {
>>>                elif [ ! -z ${_svntrunk} ] && [ ! -z ${_svnmod} ] ; then
>>>                        [ $(type -p svn) ] || return 0
>>>                        msg "$(gettext "Determining latest svn revision...")"
>>> -                       newpkgver=$(svn log $_svntrunk --limit 1 -q | sed -n 's/^r\([0-9]*\) .*$/\1/p')
>>> +                       newpkgver=$(LC_ALL= LANG= svn info $_svntrunk | sed -n 's/^Last Changed Rev: \([0-9]*\)$/\1/p')
>>>     
>> I settled on this after I saw a similar use case elsewhere in makepkg:
>>   echo "# $(LC_ALL= LANG= date -u)" >>.PKGINFO
>> I think it makes sense. Let me know if anyone has better ideas.
>>
>>   
> 
>  From memory, that is the cleaner way to unset the locales so it is all 
> good.
> 

Here is a filtered output of git grep LC_ALL :

contrib/bacman:echo "# $(LC_ALL=C date)"            >> .PKGINFO
doc/makepkg.8.txt:seeking help or for other purposes, you may wish to 
run "`LC_ALL=C makepkg`" so
scripts/makepkg.sh.in:  echo "# $(LC_ALL= LANG= date -u)" >>.PKGINFO

So maybe we could change the first two for a better consistency?




More information about the pacman-dev mailing list