Creating a GitHub Pull Request from within PhpStorm

Create GitHub Pull Request from PhpStormSo you’ve worked on some code forked from GitHub and want to send it back to the original repository… Chances are you’ll be doing this using a Pull Request. These let us tell others about changes we’ve pushed to a GitHub repository so they can review, comment and discuss the proposed modifications. Once a Pull Request is approved, the changes included in it are committed to a branch of the original repository.

Many open source projects are using this workflow: everyone can create a fork of the project. When a developer finishes some work, a Pull Request is created where project maintainers can do code reviews and discuss changes before accepting the contribution.

There’s no need to interrupt your coding streak and switch to a browser: Pull Requests can be opened right from within PhpStorm. Let’s see.

This functionality is available in IntelliJ IDEA, PyCharm, WebStorm, PhpStorm, RubyMine and AppCode.

This functionality is available in IntelliJ IDEA, PyCharm, WebStorm, PhpStorm, RubyMine and AppCode.

Using the VCS | Git | Create Pull Request menu, we can select the target branch for our Pull Request as well as a title and description. Clicking OK will publish it to GitHub:

Create pull request

Clicking Show Diff gives us an overview of all changes that will be included in the pull request. The Log tab shows us a list of all commits and file modifications that will be proposed:

View log of changes in pull request

If needed, we can use the Diff tab to generate a per-file diff of all changes. Here’s a diff of the performance fix we’re creating a Pull Request for:

View diff

And while we’re at it, there are quite a few other options available for working with GitHub from within the IDE. Give them a try and let us hear your thoughts in the issue tracker, through the comments below or in our forums!

Develop with pleasure!
– JetBrains PhpStorm Team

This entry was posted in Cool Feature and tagged , , . Bookmark the permalink.
  • marcvangend

    Nice. It’s good to see that PhpStorm is not trying to be an isolated all-in-one tool, but that it actively integrates with all other tools that developers use.

    Now that this is in, would it be hard to do the same for similar VCS services like Bitbucket?

    • Maarten Balliauw

      There is a BitBucket plugin available from the settings which adds some common BitBucket functionality. Pull requests aren’t in there, but there are some similar features in it. Check http://plugins.jetbrains.com/plugin/?id=6207

  • Carl Inniss

    Greetings.

    This is an awesome feature, but I don’t see it in my version. I’m using 6.0.3

    Any ideas why I’m not seeing it? My other github branches are visible, and it seems to work fine. It is however a private repository I have access to. All the other functions work. Could that be it?

    • Maarten Balliauw

      This is one of the new features in PhpStorm 7