Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Merge GitHub Pull Requests

...

All the GitHub pull requests could be merged and closed via dl-merge-pr.py.

 

dl-merge-pr.py is a script that automates the process of accepting a code change into the project. It creates a temporary branch from apache/master, squashes the commits in the pull request, rewrites the commit message in the squashed commit to follow a standard format including information about each original commit, merges the squashed commit into the temporary branch, pushes the code to apache/master and closes the JIRA ticket.

The push will then be mirrored to apache-github/master, which will cause the PR to be closed due to the pattern in the commit message.

Note that the script will configure the remote repositories for GitHub and Apache before executing remote updates (i.e. git push and closing JIRA ticket).

Setting Up

1. Add aliases for the remotes expected by the merge script (if you haven't already):

2. Install jira-python: 

sudo easy_install jira

Merging

Once the pull request is ready to be merged (it has been reviewed, feedback has been addressed, CI build has been successful and the branch merges cleanly into master):

1. Set the JIRA_USERNAME and JIRA_PASSWORD environment variables with the appropriate credentials if you intend to ask the script to close the issue associated with the pull request.

2. Run the merge script:

python dev/dl-merge-pr.py

3. Answer the questions prompted by the script.