Last active
September 1, 2015 17:50
-
-
Save domenic/11371574 to your computer and use it in GitHub Desktop.
.bashrc with GitHub PR function
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
pr () { | |
git fetch origin refs/pull/$1/head:refs/remotes/origin/pr/$1 --force | |
git checkout -b pr/$1 origin/pr/$1 | |
git rebase master | |
git checkout master | |
git merge pr/$1 --ff-only | |
} |
Note that on Macs by default .bashrc
doesn't run. See http://apple.stackexchange.com/questions/12993/why-doesnt-bashrc-run-automatically
For merging your own PRs, or in general any PR that uses a branch on the main repo instead of a fork, you can try:
mypr () {
git checkout $1
git rebase master
git push origin $1 --force
git checkout master
git merge $1 --ff-only
}
Usage:
$ mypr selectors-attribute-values # rebases, force-pushes to update origin version, and merges to local master
$ git push # pushes local master to origin
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
You can now CD into a directory containing a checked-out Git repo and type
pr 42
to pull down the contents of PR #42 and put it on top of master.If the PR was already on top of master, then pushing this will automatically close the PR as "merged." If not, then the PR will remain open, and you'll want to close it with a comment like "merged in deadb33f."