diff options
Diffstat (limited to '.gitconfig')
-rw-r--r-- | .gitconfig | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -60,12 +60,16 @@ # List contributors with number of commits contributors = shortlog --summary --numbered - # Merge GitHub pull request on top of the `master` branch + # Merge GitHub pull request on top of the current branch or, + # if a branch name is specified, on top of the specified branch mpr = "!f() { \ + declare currentBranch=\"$(git symbolic-ref --short HEAD)\"; \ + declare branch=\"${2:-$currentBranch}\"; \ if [ $(printf \"%s\" \"$1\" | grep '^[0-9]\\+$' > /dev/null; printf $?) -eq 0 ]; then \ git fetch origin refs/pull/$1/head:pr/$1 && \ - git rebase master pr/$1 && \ - git checkout master && \ + git checkout -B $branch && \ + git rebase $branch pr/$1 && \ + git checkout -B $branch && \ git merge pr/$1 && \ git branch -D pr/$1 && \ git commit --amend -m \"$(git log -1 --pretty=%B)\n\nCloses #$1.\"; \ |