aboutsummaryrefslogtreecommitdiff
path: root/buildroot/share/git/mfpr
diff options
context:
space:
mode:
authorGeorgiy Bondarenko <69736697+nehilo@users.noreply.github.com>2021-03-04 20:54:23 +0300
committerGeorgiy Bondarenko <69736697+nehilo@users.noreply.github.com>2021-03-04 20:54:23 +0300
commite8701195e66f2d27ffe17fb514eae8173795aaf7 (patch)
tree9f519c4abf6556b9ae7190a6210d87ead1dfadde /buildroot/share/git/mfpr
downloadkp3s-lgvl-e8701195e66f2d27ffe17fb514eae8173795aaf7.tar.xz
kp3s-lgvl-e8701195e66f2d27ffe17fb514eae8173795aaf7.zip
Initial commit
Diffstat (limited to 'buildroot/share/git/mfpr')
-rw-r--r--buildroot/share/git/mfpr37
1 files changed, 37 insertions, 0 deletions
diff --git a/buildroot/share/git/mfpr b/buildroot/share/git/mfpr
new file mode 100644
index 0000000..b853c69
--- /dev/null
+++ b/buildroot/share/git/mfpr
@@ -0,0 +1,37 @@
+#!/usr/bin/env bash
+#
+# mfpr [1|2|3]
+#
+# Make a PR against bugfix-1.1.x or bugfix-2.0.x
+#
+
+[[ $# < 2 && $1 != "-h" && $1 != "--help" ]] || { echo "usage: `basename $0` [1|2|3] [branch]" 1>&2 ; exit 1; }
+
+MFINFO=$(mfinfo "$@") || exit 1
+IFS=' ' read -a INFO <<< "$MFINFO"
+ORG=${INFO[0]}
+FORK=${INFO[1]}
+REPO=${INFO[2]}
+TARG=${INFO[3]}
+BRANCH=${INFO[4]}
+OLDBRANCH=${INFO[5]}
+
+[[ $BRANCH == $TARG ]] && { echo "Can't create a PR from the PR Target ($BRANCH). Make a copy first." 1>&2 ; exit 1; }
+
+[[ $BRANCH != $OLDBRANCH ]] && { git checkout $BRANCH || exit 1; }
+
+# See if it's been pushed yet
+if [ -z "$(git branch -vv | grep ^\* | grep \\[origin)" ]; then firstpush; fi
+
+OPEN=$(echo $(which gnome-open xdg-open open) | awk '{ print $1 }')
+URL="https://github.com/$ORG/$REPO/compare/$TARG...$FORK:$BRANCH?expand=1"
+
+if [ -z "$OPEN" ]; then
+ echo "Can't find a tool to open the URL:"
+ echo $URL
+else
+ echo "Opening a New PR Form..."
+ "$OPEN" "$URL"
+fi
+
+[[ $BRANCH != $OLDBRANCH ]] && git checkout $OLDBRANCH