Versions Compared

Key

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

...

  1. GitHub pull-request
  2. Patch-file

1. GitHub pull-request

Create pull request

  • You need to have a fork of Apache Ignite mirror on GitHub.
  • Fix / implement JIRA ticket in your fork. Commit to remote branch.
  • Create pull request from the new remote branch in the fork to Apache Ignite master.
  • TeamCity will automatically trigger builds and label it as a "pull/<pull-request-number>/head". Select this label in the branches dropdown and monitor test results.
  • Once tests are passed, the pull request can be reviewed and merged by a committer.

Merge pull request (for committers)

To merge a pull request you need to have two remotes - one for Apache repo and another for GitHub mirror. They can be added like this:

To merge a pull request to Apache Ignite master do the following (replace <xxx> with the pull request number):
  1. Go to you fork, make sure it doesn't have any uncommitted changes.
  2. Fetch pull request to a local branch:
    • git fetch upstream pull/<xxx>/head:pr-<xxx>

  3. Merge from the new branch to master:
    • git merge --squash pr-<xxx>
  4. Commit to local master. Do not forget to specify author and provide a comment that will close the pull request (see https://help.github.com/articles/closing-issues-via-commit-messages/):
    • git commit --author=“John Doe <jdoe@apache.org>" -m “ignite-999 - Cool feature implemented. Closes #<xxx>.”
  5. Push to 'apache' remote:
    • git push apache master

 

 +------------+             +---------------+            +-----------------+

...

                                                         +-----------------+

Create pull request

  • You need to have a fork of Apache Ignite mirror on GitHub.
  • Fix / implement JIRA ticket in your fork. Commit to remote branch.
  • Create pull request from the new remote branch in the fork to Apache Ignite master.
  • TeamCity will automatically trigger builds and label it as a "pull/<pull-request-number>/head". Select this label in the branches dropdown and monitor test results.
  • Once tests are passed, the pull request can be reviewed and merged by a committer.

Merge pull request (for committers)

To merge a pull request you need to have two remotes - one for Apache repo and another for GitHub mirror. They can be added like this:


To merge a pull request to Apache Ignite master do the following (replace <xxx> with the pull request number):
  1. Go to you fork, make sure it doesn't have any uncommitted changes.
  2. Fetch pull request to a local branch:
    • git fetch upstream pull/<xxx>/head:pr-<xxx>

  3. Merge from the new branch to master:
    • git merge --squash pr-<xxx>
  4. Commit to local master. Do not forget to specify author and provide a comment that will close the pull request (see https://help.github.com/articles/closing-issues-via-commit-messages/):
    • git commit --author=“John Doe <jdoe@apache.org>" -m “ignite-999 - Cool feature implemented. Closes #<xxx>.”
  5. Push to 'apache' remote:
    • git push apache master

2. Patch-file

2.1 Where to start

...