I don’t like GitHub’s pull interface. They make merge commits, which suck. And I want to work from the command line, not the web site.
When I noticed that I was losing on the scoreboard, I wrote a quick and dirty script to list open pull requests for a repository from the command line: github-list-pulls.
You'll need a GitHub token, as I describe in "How to move CPAN RT tickets to Github". And you'll need to put it and your user name in your ~/.gitconfig
file. Or you need to edit my code to store those another way.
It works like this:
$ cd ~/git/path-iterator-rule $ github-list-pulls dagolden/path-iterator-rule: 2013-02-28T21:48:19Z Implementation for line_match and contents_match rules Includes test cases and documentation. Link: https://github.com/dagolden/path-iterator-rule/pull/8 git-fetch-branch git://github.com/tobyink/path-iterator-rule.git master
That last line lets me copy and paste the command for another script I have that creates a local review branch of a pull: git-fetch-branch.
Here’s how that one works:
$ git-fetch-branch git://github.com/tobyink/path-iterator-rule.git master Fetched git://github.com/tobyink/path-iterator-rule.git master -> review/tobyink-master
Then I can work with the local review/tobyink-master
branch to inspect it, rebase it, cherry-pick it, amend it, run tests or whatever.
I’m glad the pull requests and related discussions are on GitHub, but I like working with them locally. Now I can.