Versions Compared

Key

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

...

  • Once the ticket has passed all the reviews and has no additional comments, the committer should apply the latest patch and push it to the master branch.
  • The committer should comment on the ticket stating that the patch has been applied to the master.
  • File release notes for this ticket, and unset Release Notes Required flag.
  • Set fixVersion field to target release, usually the next unreleased version.
  • Move ticket to RESOLVED state. 

GIT workflow

 +------------+             +---------------+            +-----------------+
 |            |   replica   |               |    fork    |                 |
 | Apache Git | ==========> | GitHub Mirror | ---------> | John Doe's Fork |
 |            |             |               |            |                 |
 +------------+             +---------------+            +-----------------+
        ^                            ^                            ^
        |                            |                            |
        |                            +------------------------+   | origin
        |                                  upstream           |   |
        |                                                     |   |
        |                                                +-----------------+
        |    *Apache Git remote handle for committers*   |                 |
        +------------------------------------------------|   Local clone   |
                                                         |                 |
                                                         +-----------------+

Creation

To startSetting up:

  • You need to fork an Apache Ignite mirror on GitHub.
  • Make a local copy of your Apache Ignite mirror fork. Your remote origin will refer to 'https://github.com/<your_github_uname>/ignite'.
  • You will need to update a local master sometimes (to merge to your development branches sometimes). How to do it:

    • Add remote for Apache Ignite mirror (you need to do it once)

      git remote add upstream https://github.com/apache/ignite
    • Each time when you want to update your local master do the following:

      Code Block
      git pull upstream
      git checkout master


To make contributionContributing:

  • Fix / implement JIRA ticket in your fork. Provide Java docs whenever required. If you add a new package make sure that package-info.java file in it is in place with a description. Commit branch to origin (origin = your fork). It's recommended to develop IGNITE-nnn ticket at ignite-nnn branch.
  • If your contribution is significant (new functionality, deeply reworked existed functionality API) please describe the contribution in detail, then add an example of the usage to 'ignite-example' and send an email about the contribution to the dev mailing list.
  • Create a pull request from the new remote branch in the fork to master of Apache Ignite mirror. Please, start a title of the pull request from 'IGNITE-nnn'. An email about the pull request will be sent to the dev mailing list and the same JIRA comment will be added to the IGNITE-nnn ticket.
  • Trigger validation of those test suites that have been affected by your changes on TeamCity:
    • Open "Run All..." test suite, press button named "..." that is located on the left of "Run" button. "Run custom build" dialog will appear;
    • Go to "Changes" tab and choose "pull/<pull-request-number>/head" in "Build branch" dropdown list;
    • Press "Run build" button and monitor tests results. 
  • Inspect contribution using TeamCity Bot:
    • Paste PR or JIRA ticket number to search box;
    • Press More → Show "pull/<pull-request-number>/head" report when test results are ready. You can also trigger build from the bot;
    • Press "Comment JIRA" button to leave TC bot visa in JIRA ticket.
  • Once tests are passed, the pull request can be reviewed and merged by a committer. Move a corresponding JIRA ticket to "Patch Available" state by clicking on "Submit Patch" button and let the community know that you're ready for review.

...