~bzr-pqm/bzr/bzr.dev

1185.1.29 by Robert Collins
merge merge tweaks from aaron, which includes latest .dev
1
#! /bin/sh -pe
2
3
# take patches from patchwork into bzr
4
5
# authentication must be in ~/.netrc
6
7
# TODO: Scan all pending patches and say which ones apply cleanly.
8
9
# these should be moved into some kind of per-project configuration
10
PWK_ROOT='http://patchwork.ozlabs.org/bazaar-ng'
11
PWK_AUTH_ROOT='https://patchwork.ozlabs.org/bazaar-ng'
12
13
usage() {
14
    cat <<EOF
15
usage: 
16
   pwk cat PATCH-ID       show the patch text
17
   pwk try PATCH-ID        see if the patch applies cleanly
18
   pwk apply PATCH-ID      apply patch into current directory
19
EOF
20
}
21
22
catpatch() {
23
    curl --silent --show-error --get -d id=$1 $PWK_ROOT/patchcontent
24
}
25
26
if [ $# -lt 1 ]
27
then
28
    usage
29
    exit 1
30
fi
31
32
33
case "$1" in
34
help|-h|--help)
35
    usage
36
    exit 0
37
    ;;
38
cat)
39
    catpatch $2 | ${PAGER:-less}
40
    ;;
41
try)
1583.1.2 by Michael Ellerman
Update contrib/pwk for -p1 diffs from bzr
42
    catpatch $2 | patch -p1 --dry-run
1185.1.29 by Robert Collins
merge merge tweaks from aaron, which includes latest .dev
43
    ;;
44
apply)
1583.1.2 by Michael Ellerman
Update contrib/pwk for -p1 diffs from bzr
45
    catpatch $2 | patch -p1
1185.1.29 by Robert Collins
merge merge tweaks from aaron, which includes latest .dev
46
    ;;
47
*)
48
    usage
49
    exit 1
1583.1.2 by Michael Ellerman
Update contrib/pwk for -p1 diffs from bzr
50
esac