You are viewing an older revision! See the latest version

Collaboration/Pull requests

« Collaboration

A pull request lets you tell others about changes you've added to a fork of their (or ancestor) repository, effectively granting them permission to include and use your code in their code base. Once the pull request is created, the other party can review, accept or reject the set of changes, discuss further modifications and even add follow-up changes or merges.

Think of pull requests as for simplified [[/handbook/Collaboration/Getting-started#forking-a-repository|fork and update] workflow, where the changes contributed by non-repository developers are being moderated by the repository author(s).

Day to day usage

The first important thing to know about pull requests is that they can only exist between related repositories. The term 'related repositories' means that either repository is ancestor to the other through direct or indirect relationship (e.g. fork of the fork of the fork).

1 - Creating a pull request

The common case is when you publish a fork of someone else's repository that also contains your changes, enhancements, bug fixes, code refactoring etc. The mbed Developer site will recognize your repository as fork of the original repository and display it under repository details:

Click to enlarge

Notice the additional "Create Pull Request" button on top right. The button is visible only to you and other repository authors (if any).

Once you click it, you'll be taken to the "Create Pull Request" page where the URL fields for your and ancestor repository will be prefilled (see below).

Click to enlarge

This article is unfinished. We are working on it!


All wikipages