...
git checkout -b <SAMOA-XX> upstream/prpull/<PR_ID>
Otherwise, you can fetch the pull request directly from the upstream remote.
...
Now you can test the pull request locally.
Merge a pull request
Once you are happy with the changes in a pull request and are ready to merge it, you need to: checkout the base PR branch (master or gh-pagessee above), merge rebase on the branchcurrent master, commit it, and push it to the official Apache git repository.
In this example, I assume the change is a code change applied to master. For For documentation changes the process is the same but applied to the gh-pages branch. Additionally, you need to publish the website as described in in Publish Website.
git checkout master
git merge --squash SAMOA-XX
Now you have the changes from the pull request staged on your master branch, and can do some final adjustments. When you are ready to commit the changes:
git commit
The default comment starts with:
Squashed commit of the following:
Remove all the comments and leave only a single line comment with the JIRA issue, the title of the PR, and "Fix <PR_ID>". For example, if the PR_ID is 123:
SAMOA-XX: Awesome new feature. Fix #123
First, fetch the PR as explained above. Make sure your master is up to date, then rebase the PR branch on master if needed.
git checkout <SAMOA-XX>
git rebase master
At this point double check that the commit messages are in the proper format and that the PR contains no merge commits to keep linear git history.
Now if there are no conflicts and the tests are passing, Now you are ready to push the commits to the official Apache repository.
git push apache <SAMOA-XX>:master
Congratulations! You are done done
If you committed to the gh-pages branch remember to to publish the updated website.