From b4b425f2997f39870cc16160b180665204c1b870 Mon Sep 17 00:00:00 2001 From: Stephen Rothwell Date: Wed, 19 Mar 2008 15:24:34 +1100 Subject: [PATCH] Use rsync for quilt trees on kernel.org --- fetch_trees | 51 +++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 39 insertions(+), 12 deletions(-) diff --git a/fetch_trees b/fetch_trees index c83647a..469c63f 100755 --- a/fetch_trees +++ b/fetch_trees @@ -15,6 +15,15 @@ while read email type name url ref; do continue fi if [ "$type" = "quilt" ]; then + case "$url" in + http://kernel.org/*|http://www.kernel.org/*) + use_rsync=true + rurl=$(echo "$url" | sed -r 's,^http://(www\.)?kernel\.org,master.kernel.org:,') + ;; + *) + use_rsync=false + ;; + esac cd ../quilt || { echo "Cannot chdir to ../quilt" 1>&2 continue @@ -29,11 +38,19 @@ while read email type name url ref; do cd "$origwd" continue } - wget -N -nv --no-cache "$url/series" || { - echo "Wget of $name series file failed" 1>&2 - cd "$origwd" - continue - } + if $use_rsync; then + rsync -avz "$rurl/series" series || { + echo "rsync of $name series file failed" 1>&2 + cd "$origwd" + continue + } + else + wget -N -nv --no-cache "$url/series" || { + echo "Wget of $name series file failed" 1>&2 + cd "$origwd" + continue + } + fi find * -type f | grep -v '^series$' | sort >.series.old do_echo=echo grep -q NEXT_PATCHES series && @@ -46,13 +63,23 @@ while read email type name url ref; do *) $do_echo $line ;; esac done .series.next - wget -N -nv --no-cache -B "$url" -i .series.next || { - echo "Wget of series '$name' failed" 1>&2 - cd .. - rm -rf "$name" - git checkout "$name" - break - } + if $use_rsync; then + rsync -avz --files-from .series.next "$rurl" . || { + echo "rsync of series '$name' failed" 1>&2 + cd .. + rm -rf "$name" + git checkout "$name" + break + } + else + wget -N -nv --no-cache -B "$url" -i .series.next || { + echo "Wget of series '$name' failed" 1>&2 + cd .. + rm -rf "$name" + git checkout "$name" + break + } + fi comm -23 .series.old .series.next | xargs -r rm -f rm -f .series.old .series.next cd "$origwd" -- 2.39.2