aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author√Črico Rolim <erico.erc@gmail.com>2020-06-22 02:32:38 -0300
committerLeah Neukirchen <leah@vuxu.org>2020-06-22 13:52:51 +0200
commit4759da4e208f3c9918862486ff0d7f870314c0cd (patch)
tree4b7878f675e925005548f62aa250bd1b9660687f
parent319685958fd7e4475770f79828c5e4c220b76467 (diff)
downloadgit-merge-pr-4759da4e208f3c9918862486ff0d7f870314c0cd.tar.gz
git-merge-pr-4759da4e208f3c9918862486ff0d7f870314c0cd.tar.xz
git-merge-pr-4759da4e208f3c9918862486ff0d7f870314c0cd.zip
Support curl, auto detect which one to use.
Closes: #2 [via git-merge-pr]
-rwxr-xr-xgit-merge-pr15
1 files changed, 13 insertions, 2 deletions
diff --git a/git-merge-pr b/git-merge-pr
index 2d11511..03259b7 100755
--- a/git-merge-pr
+++ b/git-merge-pr
@@ -16,8 +16,19 @@ PROJECT=${URL%.git}
PROJECT=${PROJECT##*:}
PROJECT=${PROJECT#//github.com/}
+if command -v wget >/dev/null; then
+ API_CMD="wget -q -O --header"
+ PATCH_CMD="wget -nv -O"
+elif command -v curl >/dev/null; then
+ API_CMD="curl -s -H"
+ PATCH_CMD="curl -Lo"
+else
+ echo "Neither wget or curl could be found in PATH"
+ exit 1
+fi
+
if [ -z "$PR" ]; then
- wget -q -O- --header 'Accept: application/json' \
+ $API_CMD 'Accept: application/json' \
"https://api.github.com/repos/${PROJECT}/pulls" |
jq -r 'if length > 0
then reverse[] | "\(.number) <\(.user.login)> \(.title)"
@@ -29,7 +40,7 @@ fi
PATCH="$(mktemp)"
trap "rm -f $PATCH" INT TERM EXIT
-wget -nv -O "$PATCH" https://github.com/$PROJECT/pull/"$PR".patch
+$PATCH_CMD "$PATCH" https://github.com/$PROJECT/pull/"$PR".patch
WHITESPACE="$(git config --get merge-pr.whitespace || true)"
git am "--whitespace=${WHITESPACE:-warn}" "$@" "$PATCH"