Add clarification around experience Adding test improvement > enhancement Signed-off-by: Mary Anthony <mary@docker.com>
3.6 KiB
page_title: Create a pull request (PR) page_description: Basic workflow for Docker contributions page_keywords: contribute, pull request, review, workflow, beginner, squash, commit
Create a pull request (PR)
A pull request (PR) sends your changes to the Docker maintainers for review. You
create a pull request on GitHub. A pull request "pulls" changes from your forked
repository into the docker/docker
repository.
You can see the list of active pull requests to Docker on GitHub.
Check Your Work
Before you create a pull request, check your work.
-
In a terminal window, go to the root of your
docker-fork
repository.$ cd ~/repos/docker-fork
-
Checkout your feature branch.
$ git checkout 11038-fix-rhel-link Already on '11038-fix-rhel-link'
-
Run the full test suite on your branch.
$ make test
All the tests should pass. If they don't, find out why and correct the situation.
-
Optionally, if modified the documentation, build the documentation:
$ make docs
-
Commit and push any changes that result from your checks.
Rebase your branch
Always rebase and squash your commits before making a pull request.
-
Fetch any of the last minute changes from
docker/docker
.$ git fetch upstream master From github.com:docker/docker * branch master -> FETCH_HEAD
-
Start an interactive rebase.
$ git rebase -i upstream/master
-
Rebase opens an editor with a list of commits.
pick 1a79f55 Tweak some of the other text for grammar pick 53e4983 Fix a link pick 3ce07bb Add a new line about RHEL
If you run into trouble,
git --rebase abort
removes any changes and gets you back to where you started. -
Squash the
pick
keyword withsquash
on all but the first commit.pick 1a79f55 Tweak some of the other text for grammar squash 53e4983 Fix a link squash 3ce07bb Add a new line about RHEL
After closing the file,
git
opens your editor again to edit the commit message. -
Edit and save your commit message.
`git commit -s` Make sure your message includes <a href="./set-up-git" target="_blank>your signature</a>.
-
Push any changes to your fork on GitHub.
$ git push origin 11038-fix-rhel-link
Create a PR on GitHub
You create and manage PRs on GitHub:
-
Open your browser to your fork on GitHub.
You should see the latest activity from your branch.
-
Click "Compare & pull request."
The system displays the pull request dialog.
The pull request compares your changes to the
master
branch on thedocker/docker
repository. -
Edit the dialog's description and add a reference to the issue you are fixing.
GitHub helps you out by searching for the issue as you type.
-
Scroll down and verify the PR contains the commits and changes you expect.
For example, is the file count correct? Are the changes in the files what you expect.
-
Press "Create pull request".
The system creates the request and opens it for you in the
docker/docker
repository.
Where to go next
Congratulations, you've created your first pull request to Docker. The next step is for you learn how to participate in your PR's review.